Author: as
Date: Fri Nov 16 13:16:50 2007
New Revision: 6751

Log:
- Added support for generating 'content' ATOM feed entry sub-element.
# Still need support to generate 'content' with XML contents.
# Still need to modify the tests to include the content-link-summary
  dependencies.

Added:
    trunk/Feed/tests/atom/regression/generate/entry/content/
    trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.in
    trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.out
    trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.out
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.out
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.out
    trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.out
    trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.in
    trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.out
    trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.out
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.out
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.in
    
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.out
    
trunk/Feed/tests/atom/regression/generate/entry/content/powered-by-141x32-white.png
   (with props)
Modified:
    trunk/Feed/src/processors/atom.php

Modified: trunk/Feed/src/processors/atom.php
==============================================================================
--- trunk/Feed/src/processors/atom.php [iso-8859-1] (original)
+++ trunk/Feed/src/processors/atom.php [iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -450,6 +450,102 @@
     }
 
     /**
+     * Creates an XML node in the XML document being generated.
+     *
+     * @param DOMNode $root The root in which to create the node $element
+     * @param string $element The name of the node to create
+     * @param string $parent The name of the parent node which contains the 
node $element
+     * @param array(string=>mixed) $dataNode The data for the node to create
+     * @ignore
+     */
+    protected function generateContentNode( DOMNode $root, $element, $parent = 
null, $dataNode )
+    {
+        $elementTag = $this->xml->createElement( $element );
+        $root->appendChild( $elementTag );
+
+        $subElement = $parent;
+
+        if ( $parent !== null )
+        {
+            $subElement = $element;
+            $element = $parent;
+        }
+
+        $attributes = array();
+        $required = $this->schema->getRequiredAttributes( $element, 
$subElement );
+
+        foreach ( $this->schema->getAttributes( $element, $subElement ) as 
$attribute => $type )
+        {
+            if ( isset( $dataNode->$attribute ) )
+            {
+                $val = $dataNode->$attribute;
+                if ( $attribute === 'type' )
+                {
+                    switch ( $val )
+                    {
+                        case 'html':
+                            $dataNode->set( htmlspecialchars( $dataNode ) );
+                            $this->addAttribute( $elementTag, 'type', $val );
+                            break;
+
+                        case 'xhtml':
+                            $this->addAttribute( $elementTag, 'type', $val );
+                            $this->addAttribute( $elementTag, 'xmlns:xhtml', 
'http://www.w3.org/1999/xhtml' );
+                            $xhtmlTag = $this->xml->createElement( 
'xhtml:div', $dataNode->__toString() );
+                            $elementTag->appendChild( $xhtmlTag );
+                            $elementTag = $xhtmlTag;
+                            break;
+
+                        case 'text':
+                            $this->addAttribute( $elementTag, 'type', $val );
+                            break;
+
+                        default:
+                            if ( substr_compare( $val, '+xml', -4, 4, true ) 
=== 0
+                                 || substr_compare( $val, '/xml', -4, 4, true 
) === 0 )
+                            {
+                                // @todo: implement to assign the text in 
$dataNode as an XML node into $elementTag
+                                $this->addAttribute( $elementTag, 'type', $val 
);
+                            }
+                            else if ( substr_compare( $val, 'text/', 0, 5, 
true ) === 0 )
+                            {
+                                $dataNode->set( htmlspecialchars( $dataNode ) 
);
+                                $this->addAttribute( $elementTag, 'type', $val 
);
+                                break;
+                            }
+                            else if ( $val !== null )
+                            {
+                                // @todo: make 76 and "\n" options?
+                                $dataNode->set( chunk_split( base64_encode( 
$dataNode ), 76, "\n" ) );
+                                $this->addAttribute( $elementTag, 'type', $val 
);
+                            }
+                            else
+                            {
+                                $val = 'text';
+                                $this->addAttribute( $elementTag, 'type', $val 
);
+                            }
+                            break;
+
+                    }
+                }
+                else
+                {
+                    $this->addAttribute( $elementTag, $attribute, $val );
+                }
+            }
+            else if ( in_array( $attribute, $required ) )
+            {
+                throw new ezcFeedRequiredMetaDataMissingException( $attribute 
);
+            }
+        }
+
+        if ( !$this->schema->isEmpty( $element, $subElement ) )
+        {
+            $elementTag->nodeValue = $dataNode;
+        }
+    }
+
+    /**
      * Creates an XML person node in the XML document being generated.
      *
      * @param DOMNode $root The root in which to create the node $element
@@ -557,6 +653,16 @@
                         }
 
                         $this->generateNode( $entryTag, $element, $parent, 
$dataNode );
+                        break;
+
+                    case 'content':
+                        $dataNode = $data;
+                        if ( is_array( $data ) )
+                        {
+                            $dataNode = $data[0];
+                        }
+
+                        $this->generateContentNode( $entryTag, $element, 
$parent, $dataNode );
                         break;
 
                     case 'author':

Added: trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.in
==============================================================================
--- trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.in 
(added)
+++ trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,10 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array() ) ) ) );
+?>

Added: trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.out
==============================================================================
--- trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.out 
(added)
+++ trunk/Feed/tests/atom/regression/generate/entry/content/content_empty.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content></content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,10 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( 'src' => 
'http://ezcomponents.org/files/downloads/ezcomponents-1.0.zip' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_empty_src.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content 
src="http://ezcomponents.org/files/downloads/ezcomponents-1.0.zip";></content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,11 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( 'src' => 
'http://ezcomponents.org/files/downloads/ezcomponents-1.0.zip',
+                                                                 'type' => 
'application/x-zip' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.out
 (added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_src_type_zip.out
 [iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content type="application/x-zip" 
src="http://ezcomponents.org/files/downloads/ezcomponents-1.0.zip";>
+</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,10 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => 'Entry 
content' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_absent.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content>Entry content</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,11 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => 'Entry 
content',
+                                                                 'type' => 
'html' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_html.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content type="html">Entry content</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.in
==============================================================================
--- trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.in 
(added)
+++ trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,11 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => 
file_get_contents( dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 
'powered-by-141x32-white.png' ),
+                                                                 'type' => 
'image/png' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_png.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content 
type="image/png">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
+rkJggg==
+</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,11 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => 'Entry 
content',
+                                                                 'type' => 
'text' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content type="text">Entry content</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.in
 (added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.in
 [iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,29 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => '
+\documentclass[12pt]{article}
+\title{\LaTeX}
+\date{}
+\begin{document}
+  \maketitle \LaTeX{} is a document preparation system for the \TeX{}
+  typesetting program. It offers programmable desktop publishing
+  features and extensive facilities for automating most aspects of
+  typesetting and desktop publishing, including numbering and
+  cross-referencing, tables and figures, page layout, bibliographies,
+  and much more. \LaTeX{} was originally written in 1984 by Leslie
+  Lamport and has become the dominant method for using \TeX; few
+  people write in plain \TeX{} anymore. The current version is
+  \LaTeXe.
+  \newline
+  % This is a comment, it is not shown in the final output.
+  % The following shows a little of the typesetting power of LaTeX
+\end{document}
+',
+                                                                 'type' => 
'text/x-tex' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.out
 (added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_text_other.out
 [iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content type="text/x-tex">
+\documentclass[12pt]{article}
+\title{\LaTeX}
+\date{}
+\begin{document}
+  \maketitle \LaTeX{} is a document preparation system for the \TeX{}
+  typesetting program. It offers programmable desktop publishing
+  features and extensive facilities for automating most aspects of
+  typesetting and desktop publishing, including numbering and
+  cross-referencing, tables and figures, page layout, bibliographies,
+  and much more. \LaTeX{} was originally written in 1984 by Leslie
+  Lamport and has become the dominant method for using \TeX; few
+  people write in plain \TeX{} anymore. The current version is
+  \LaTeXe.
+  \newline
+  % This is a comment, it is not shown in the final output.
+  % The following shows a little of the typesetting power of LaTeX
+\end{document}
+</content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.in
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.in 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.in 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,11 @@
+<?php
+return array( 'id' => 'Feed id',
+              'title' => array( array( '#' => 'Feed title' ) ),
+              'updated' => 'Feed updated',
+              'author' => array( array( 'name' => 'Author name' ) ),
+              'item' => array( array( 'id' => 'Entry id',
+                                      'title' => array( array( '#' => 'Entry 
title' ) ),
+                                      'updated' => 'Entry updated',
+                                      'content' => array( array( '#' => 'Entry 
content',
+                                                                 'type' => 
'xhtml' ) ) ) ) );
+?>

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.out
==============================================================================
--- 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.out 
(added)
+++ 
trunk/Feed/tests/atom/regression/generate/entry/content/content_type_xhtml.out 
[iso-8859-1] Fri Nov 16 13:16:50 2007
@@ -1,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom";>
+  <id>Feed id</id>
+  <title>Feed title</title>
+  <updated>XXX</updated>
+  <author>
+    <name>Author name</name>
+  </author>
+  <entry>
+    <id>Entry id</id>
+    <title>Entry title</title>
+    <updated>XXX</updated>
+    <content type="xhtml" xmlns:xhtml="http://www.w3.org/1999/xhtml";>
+      <xhtml:div>Entry content</xhtml:div>
+    </content>
+  </entry>
+</feed> 

Added: 
trunk/Feed/tests/atom/regression/generate/entry/content/powered-by-141x32-white.png
==============================================================================
Binary file - no diff available.

Propchange: 
trunk/Feed/tests/atom/regression/generate/entry/content/powered-by-141x32-white.png
------------------------------------------------------------------------------
    svn:mime-type = image/png


-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to