[Checkins] SVN: zopeorg.theme/ Initial import of zopeorg.theme

Denis Mishunov spliter at is.lg.ua
Thu Dec 6 11:22:45 EST 2007


Log message for revision 82164:
  Initial import of zopeorg.theme

Changed:
  A   zopeorg.theme/
  A   zopeorg.theme/README.txt
  A   zopeorg.theme/docs/
  A   zopeorg.theme/docs/HISTORY.txt
  A   zopeorg.theme/docs/INSTALL.txt
  A   zopeorg.theme/docs/LICENSE.GPL
  A   zopeorg.theme/docs/LICENSE.txt
  A   zopeorg.theme/setup.py
  A   zopeorg.theme/zopeorg/
  A   zopeorg.theme/zopeorg/__init__.py
  A   zopeorg.theme/zopeorg/theme/
  A   zopeorg.theme/zopeorg/theme/__init__.py
  A   zopeorg.theme/zopeorg/theme/browser/
  A   zopeorg.theme/zopeorg/theme/browser/__init__.py
  A   zopeorg.theme/zopeorg/theme/browser/configure.zcml
  A   zopeorg.theme/zopeorg/theme/browser/interfaces.py
  A   zopeorg.theme/zopeorg/theme/browser/templates/
  A   zopeorg.theme/zopeorg/theme/browser/templates/anonymous_personal_bar.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/contentviews.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/divider.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/feature.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/searchbox.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_copyright.pt
  A   zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_footer.pt
  A   zopeorg.theme/zopeorg/theme/browser/viewlets.py
  A   zopeorg.theme/zopeorg/theme/configure.zcml
  A   zopeorg.theme/zopeorg/theme/profiles/
  A   zopeorg.theme/zopeorg/theme/profiles/default/
  A   zopeorg.theme/zopeorg/theme/profiles/default/cssregistry.xml
  A   zopeorg.theme/zopeorg/theme/profiles/default/import_steps.xml
  A   zopeorg.theme/zopeorg/theme/profiles/default/jsregistry.xml
  A   zopeorg.theme/zopeorg/theme/profiles/default/skins.xml
  A   zopeorg.theme/zopeorg/theme/profiles/default/viewlets.xml
  A   zopeorg.theme/zopeorg/theme/profiles/default/zopeorg.theme_various.txt
  A   zopeorg.theme/zopeorg/theme/profiles.zcml
  A   zopeorg.theme/zopeorg/theme/setuphandlers.py
  A   zopeorg.theme/zopeorg/theme/skins/
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/dark_grey_horizontal.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_default.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_learn.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/light_grey_horizontal.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/logo.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/orange_horizontal.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/search_button_bg.png
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_templates/
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/IEFixes.css.dtml
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/base_properties.props
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/main.css.dtml
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/portlets.css.dtml
  A   zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/public.css.dtml
  A   zopeorg.theme/zopeorg/theme/skins.zcml
  A   zopeorg.theme/zopeorg/theme/tests.py
  A   zopeorg.theme/zopeorg/theme/version.txt
  A   zopeorg.theme/zopeorg.theme-configure.zcml
  A   zopeorg.theme/zopeorg.theme.egg-info/
  A   zopeorg.theme/zopeorg.theme.egg-info/PKG-INFO
  A   zopeorg.theme/zopeorg.theme.egg-info/SOURCES.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/dependency_links.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/entry_points.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/namespace_packages.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/not-zip-safe
  A   zopeorg.theme/zopeorg.theme.egg-info/paster_plugins.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/requires.txt
  A   zopeorg.theme/zopeorg.theme.egg-info/top_level.txt

-=-
Added: zopeorg.theme/README.txt
===================================================================
--- zopeorg.theme/README.txt	                        (rev 0)
+++ zopeorg.theme/README.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,7 @@
+zopeorg.theme Package Readme
+=========================
+
+Overview
+--------
+
+Plone 3.0 visual theme for zope.org project

Added: zopeorg.theme/docs/HISTORY.txt
===================================================================
--- zopeorg.theme/docs/HISTORY.txt	                        (rev 0)
+++ zopeorg.theme/docs/HISTORY.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,9 @@
+Changelog for zopeorg.theme
+
+    (name of developer listed in brackets)
+
+zopeorg.theme - 0.1 Unreleased
+
+    - Initial package structure.
+      [zopeskel]
+

Added: zopeorg.theme/docs/INSTALL.txt
===================================================================
--- zopeorg.theme/docs/INSTALL.txt	                        (rev 0)
+++ zopeorg.theme/docs/INSTALL.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,51 @@
+zopeorg.theme Installation
+=======================
+
+To install zopeorg.theme into the global Python environment (or a workingenv),
+using a traditional Zope 2 instance, you can do this:
+
+ * When you're reading this you have probably already run 
+   ``easy_install zopeorg.theme``. Find out how to install setuptools
+   (and EasyInstall) here:
+   http://peak.telecommunity.com/DevCenter/EasyInstall
+
+ * If you are using Zope 2.9 (not 2.10), get `pythonproducts`_ and install it 
+   via::
+
+       python setup.py install --home /path/to/instance
+
+   into your Zope instance.
+
+ * Create a file called ``zopeorg.theme-configure.zcml`` in the
+   ``/path/to/instance/etc/package-includes`` directory.  The file
+   should only contain this::
+
+       <include package="zopeorg.theme" />
+
+.. _pythonproducts: http://plone.org/products/pythonproducts
+
+Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
+recipe to manage your project, you can do this:
+
+ * Add ``zopeorg.theme`` to the list of eggs to install, e.g.:
+ 
+    [buildout]
+    ...
+    eggs =
+        ...
+        zopeorg.theme
+        
+  * Tell the plone.recipe.zope2instance recipe to install a ZCML slug:
+  
+    [instance]
+    recipe = plone.recipe.zope2instance
+    ...
+    zcml =
+        zopeorg.theme
+        
+  * Re-run buildout, e.g. with:
+  
+    $ ./bin/buildout
+        
+You can skip the ZCML slug if you are going to explicitly include the package
+from another package's configure.zcml file.
\ No newline at end of file

Added: zopeorg.theme/docs/LICENSE.GPL
===================================================================
--- zopeorg.theme/docs/LICENSE.GPL	                        (rev 0)
+++ zopeorg.theme/docs/LICENSE.GPL	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,222 @@
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS

Added: zopeorg.theme/docs/LICENSE.txt
===================================================================
--- zopeorg.theme/docs/LICENSE.txt	                        (rev 0)
+++ zopeorg.theme/docs/LICENSE.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,16 @@
+  zopeorg.theme is copyright Denis Mishunov
+
+  This program is free software; you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation; either version 2 of the License, or
+  (at your option) any later version.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with this program; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
+  MA 02111-1307 USA.

Added: zopeorg.theme/setup.py
===================================================================
--- zopeorg.theme/setup.py	                        (rev 0)
+++ zopeorg.theme/setup.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,34 @@
+from setuptools import setup, find_packages
+
+version = '0.1'
+
+setup(name='zopeorg.theme',
+      version=version,
+      description="Plone 3.0 visual theme for zope.org project",
+      long_description="""\
+""",
+      # Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers
+      classifiers=[
+        "Framework :: Plone",
+        "Framework :: Zope2",
+        "Framework :: Zope3",
+        "Programming Language :: Python",
+        "Topic :: Software Development :: Libraries :: Python Modules",
+        ],
+      keywords='zope plone theme',
+      author='Denis Mishunov',
+      author_email='denis at webcouturier.com',
+      url='http://zope.org',
+      license='GPL',
+      packages=find_packages(exclude=['ez_setup']),
+      namespace_packages=['zopeorg'],
+      include_package_data=True,
+      zip_safe=False,
+      install_requires=[
+          'setuptools',
+          # -*- Extra requirements: -*-
+      ],
+      entry_points="""
+      # -*- Entry points: -*-
+      """,
+      )

Added: zopeorg.theme/zopeorg/__init__.py
===================================================================
--- zopeorg.theme/zopeorg/__init__.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/__init__.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,6 @@
+# See http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
+try:
+    __import__('pkg_resources').declare_namespace(__name__)
+except ImportError:
+    from pkgutil import extend_path
+    __path__ = extend_path(__path__, __name__)

Added: zopeorg.theme/zopeorg/theme/__init__.py
===================================================================
--- zopeorg.theme/zopeorg/theme/__init__.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/__init__.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,2 @@
+def initialize(context):
+    """Intializer called when used as a Zope 2 product."""

Added: zopeorg.theme/zopeorg/theme/browser/__init__.py
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/__init__.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/__init__.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+#

Added: zopeorg.theme/zopeorg/theme/browser/configure.zcml
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/configure.zcml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/configure.zcml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,103 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/browser"
+    i18n_domain="zopeorg.theme">
+
+    <!-- 'Zope.org Theme' Zope 3 skin layer -->
+    <interface
+        interface=".interfaces.IThemeSpecific"
+        type="zope.publisher.interfaces.browser.IBrowserSkinType"
+        name="Zope.org Theme"
+        />
+        
+    <browser:viewletManager
+        name="zopeorg.portalfooter"
+        provides=".interfaces.IZopeorgPortalFooter"
+        permission="zope2.View"
+        class="plone.app.viewletmanager.manager.OrderedViewletManager"
+        layer=".interfaces.IThemeSpecific"
+        />        
+
+    <!-- Feature viewlet -->
+    <browser:viewlet  
+        name="zopeorg.feature"
+        manager="plone.app.layout.viewlets.interfaces.IPortalTop"
+        class=".viewlets.FeatureViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />
+        
+    <!-- The customized search box -->
+    <browser:viewlet
+        name="zopeorg.searchbox"
+        manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
+        class=".viewlets.ZopeorgSearchBoxViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />           
+        
+    <!-- The anonymous personal bar -->
+    <browser:viewlet
+        name="zopeorg.anon.personal_bar"
+        manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
+        class=".viewlets.ZopeorgPersonalBarViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />           
+        
+    <!-- The logged in personal bar -->
+    <browser:viewlet
+        name="plone.personal_bar"
+        manager="plone.app.layout.viewlets.interfaces.IPortalTop"
+        class="plone.app.layout.viewlets.common.PersonalBarViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="cmf.ListPortalMembers" 
+        />        
+        
+    <!-- The anonymous personal bar -->
+    <browser:viewlet
+        name="zopeorg.header.divider"
+        manager="plone.app.layout.viewlets.interfaces.IPortalTop"
+        class=".viewlets.ZopeorgHeaderDividerViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />     
+        
+    <!-- Content views (tabs) -->
+    <browser:viewlet
+        name="plone.contentviews"
+        manager="plone.app.layout.viewlets.interfaces.IPortalTop"
+        template="templates/contentviews.pt"
+        layer=".interfaces.IThemeSpecific"        
+        permission="zope2.View"
+        />  
+        
+    <!-- The zoperog footer -->
+    <browser:viewlet
+        name="zopeorg.footer"
+        manager="plone.app.layout.viewlets.interfaces.IPortalFooter"
+        template="templates/zopeorg_footer.pt"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />        
+        
+    <!-- The site actions -->
+    <browser:viewlet
+        name="plone.site_actions"
+        manager=".interfaces.IZopeorgPortalFooter"
+        class="plone.app.layout.viewlets.common.SiteActionsViewlet"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />   
+        
+    <!-- The copyright viewlet -->
+    <browser:viewlet
+        name="zopeorg.copyright"
+        manager=".interfaces.IZopeorgPortalFooter"
+        template="templates/zopeorg_copyright.pt"
+        layer=".interfaces.IThemeSpecific"
+        permission="zope2.View" 
+        />                         
+        
+
+</configure>

Added: zopeorg.theme/zopeorg/theme/browser/interfaces.py
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/interfaces.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/interfaces.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,12 @@
+from zope.viewlet.interfaces import IViewletManager
+
+from plone.theme.interfaces import IDefaultPloneLayer
+
+class IThemeSpecific(IDefaultPloneLayer):
+    """Marker interface that defines a Zope 3 skin layer.
+    """
+
+class IZopeorgPortalFooter(IViewletManager):
+    """A viewlet manager that sits in the portal footer
+       of zope.org site. Contains siteactions and copyright
+    """

Added: zopeorg.theme/zopeorg/theme/browser/templates/anonymous_personal_bar.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/anonymous_personal_bar.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/anonymous_personal_bar.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,25 @@
+<div id="portal-personaltools-wrapper"
+     i18n:domain="plone"
+     tal:condition="view/anonymous">
+
+<h5 class="hiddenStructure" i18n:translate="heading_personal_tools">Personal tools</h5>
+
+<ul id="portal-personaltools"
+    class="visualInline">
+
+    <tal:actions tal:repeat="action view/user_actions">
+        <li tal:define="icon python:view.getIconFor(action['category'], action['id'], None);
+                        class_name string:visualIcon actionicon-${action/category}-${action/id};
+                        class_name python:icon is not None and class_name or nothing;"
+            tal:attributes="class class_name">
+            <a href=""
+               tal:attributes="href action/url;
+                               class python:icon is not None and 'visualIconPadding' or nothing;"
+            ><tal:actionname i18n:translate="" 
+                             tal:content="action/title">dummy</tal:actionname
+            ></a>
+        </li>
+    </tal:actions>
+
+</ul>
+</div>

Added: zopeorg.theme/zopeorg/theme/browser/templates/contentviews.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/contentviews.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/contentviews.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,32 @@
+<div i18n:domain="plone" 
+     tal:omit-tag=""
+     tal:define="ploneview context/@@plone;"
+     tal:condition="ploneview/showEditableBorder">
+
+    <tal:block define="view_actions ploneview/prepareObjectTabs;">
+
+        <h5 class="hiddenStructure"
+            tal:condition="view_actions"
+            i18n:translate="heading_views">Views</h5>
+
+        <ul class="contentViews"
+            i18n:domain="plone">
+
+            <tal:views repeat="action view_actions">
+              <li tal:define="selected action/selected|nothing;"
+                  tal:attributes="id string:contentview-${action/id};
+                                  class python:selected and 'selected' or 'plain'">
+                <a href=""
+                   tal:content="action/title"
+                   tal:attributes="href action/url;"
+                   i18n:translate="">
+                View name
+                </a>
+              </li>
+            </tal:views>
+
+        </ul>
+        
+    </tal:block>
+
+</div>
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/browser/templates/divider.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/divider.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/divider.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,6 @@
+<div id="portal-header-divider">
+    <p>
+        <a href="#" title="">We should decide what links to put to this
+           divider viewlet.</a>
+    </p>
+</div>
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/browser/templates/feature.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/feature.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/feature.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,10 @@
+<div id="portal-feature"
+     i18n:domain="zopeorg.theme">
+     <p>
+         Zope is an open source framework for building web applications. That
+         applications commonly use the <a href="http://python.org"
+         title="Visit main Python web site">Python</a> programming
+         language.<br /> Built over a decade, Zope is leading in flexibility,
+         scalability and reusability.
+     </p>     
+</div>
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/browser/templates/searchbox.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/searchbox.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/searchbox.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,44 @@
+<div id="portal-searchbox"
+     i18n:domain="plone">
+    <form name="searchform"
+          action="search"
+          tal:attributes="action string:${view/portal_url}/search">
+
+        <label for="searchGadget" class="hiddenStructure"
+                    i18n:translate="text_search">Search Site</label>
+
+        <div class="LSBox">
+        <input name="SearchableText"
+               type="text"
+               size="18"
+               value=""
+               title="Search Site"
+               accesskey="4"
+               i18n:attributes="title title_search_site;"
+               tal:attributes="value request/SearchableText|nothing;
+                               id view/search_input_id"
+               class="inputLabel" /><button class="searchButton"
+               type="submit"><span
+               i18n:translate="label_search">Search</span></button>
+               
+
+        <!-- <input class="searchButton"
+               type="submit"
+               value="Search"
+               i18n:attributes="value label_search;" /> -->
+
+        <div class="LSResult" id="LSResult" style=""><div class="LSShadow" id="LSShadow"></div></div>
+        </div>
+    </form>
+
+    <div id="portal-advanced-search"
+         class="hiddenStructure">
+        <a href="#"
+           tal:attributes="href string:${view/portal_url}/search_form"
+           i18n:translate="label_advanced_search"
+           accesskey="5">
+            Advanced Search&hellip;
+        </a>
+    </div>
+
+</div>

Added: zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_copyright.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_copyright.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_copyright.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,12 @@
+<div id="zopeorg-copyright" 
+     i18n:domain="zopeorg.theme"
+     i18n:translate="text_zopeorg_copyright">
+    <acronym title="Copyright" i18n:name="copyright" i18n:attributes="title title_copyright;">&copy;</acronym>
+    1992-<span i18n:name="current_year"
+               tal:omit-tag=""
+               tal:define="now modules/DateTime/DateTime"
+               tal:content="now/year" />
+    by the
+    <span i18n:name="zopefoundation" tal:omit-tag="">
+        <a href="http://foundation.zope.org/" i18n:translate="label_plone_foundation">Zope Foundation</a></span>
+</div>
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_footer.pt
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_footer.pt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/templates/zopeorg_footer.pt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,3 @@
+<div id="zopeorg-footer">
+    <div tal:replace="structure provider:zopeorg.portalfooter" />
+</div>

Added: zopeorg.theme/zopeorg/theme/browser/viewlets.py
===================================================================
--- zopeorg.theme/zopeorg/theme/browser/viewlets.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/browser/viewlets.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,30 @@
+from zope.component import getMultiAdapter
+
+from Products.CMFCore.utils import getToolByName
+from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
+
+from plone.app.layout.viewlets.common import ViewletBase, SearchBoxViewlet, PersonalBarViewlet
+
+class FeatureViewlet(ViewletBase):
+    render = ViewPageTemplateFile('templates/feature.pt')
+    
+    # def update(self):
+    #     self.portal_state = getMultiAdapter((self.context, self.request),
+    #                                         name=u'plone_portal_state')
+    #     self.portal_url = self.portal_state.portal_url()
+    #     url_tool = getToolByName(self.context, 'portal_url')
+    #     contentPath = url_tool.getRelativeContentPath(self.context)
+    #     
+    #     if contentPath:
+    #         self.section = 'default'
+    #     else:
+    #         self.section = contentPath[0]
+    
+class ZopeorgSearchBoxViewlet(SearchBoxViewlet):
+    render = ViewPageTemplateFile('templates/searchbox.pt')
+    
+class ZopeorgPersonalBarViewlet(PersonalBarViewlet):
+    render = ViewPageTemplateFile('templates/anonymous_personal_bar.pt')    
+    
+class ZopeorgHeaderDividerViewlet(ViewletBase):
+    render = ViewPageTemplateFile('templates/divider.pt')    
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/configure.zcml
===================================================================
--- zopeorg.theme/zopeorg/theme/configure.zcml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/configure.zcml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,14 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:five="http://namespaces.zope.org/five"
+    xmlns:cmf="http://namespaces.zope.org/cmf"
+    i18n_domain="zopeorg.theme">
+
+   <five:registerPackage package="." initialize=".initialize" />
+
+   <include package=".browser" />
+
+   <include file="skins.zcml" />
+   <include file="profiles.zcml" />
+
+</configure>

Added: zopeorg.theme/zopeorg/theme/profiles/default/cssregistry.xml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/cssregistry.xml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/cssregistry.xml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<object name="portal_css">
+
+ <stylesheet title=""
+    id="main.css"
+    media="screen" rel="stylesheet" rendering="import"
+    cacheable="True" compression="safe" cookable="True"
+    enabled="1" expression=""/>
+
+</object>

Added: zopeorg.theme/zopeorg/theme/profiles/default/import_steps.xml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/import_steps.xml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/import_steps.xml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<import-steps>
+  <import-step id="zopeorg.theme.various"
+               version="20071121-01"
+               handler="zopeorg.theme.setuphandlers.setupVarious"
+               title="Zope.org Theme: miscellaneous import steps">
+    <dependency step="skins" />
+    Various import steps that are not handled by GS import/export
+    handlers.
+  </import-step>
+</import-steps>

Added: zopeorg.theme/zopeorg/theme/profiles/default/jsregistry.xml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/jsregistry.xml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/jsregistry.xml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<object name="portal_javascripts">
+
+</object>

Added: zopeorg.theme/zopeorg/theme/profiles/default/skins.xml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/skins.xml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/skins.xml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<object name="portal_skins" allow_any="False" cookie_persistence="False"
+   default_skin="Zope.org Theme">
+
+ <object name="zopeorg_theme_custom_images"
+    meta_type="Filesystem Directory View"
+    directory="zopeorg.theme:skins/zopeorg_theme_custom_images"/>
+ <object name="zopeorg_theme_custom_templates"
+    meta_type="Filesystem Directory View"
+    directory="zopeorg.theme:skins/zopeorg_theme_custom_templates"/>
+ <object name="zopeorg_theme_styles"
+    meta_type="Filesystem Directory View"
+    directory="zopeorg.theme:skins/zopeorg_theme_styles"/>
+
+ <skin-path name="Zope.org Theme" based-on="Plone Default">
+  <layer name="zopeorg_theme_custom_images"
+     insert-after="custom"/>
+  <layer name="zopeorg_theme_custom_templates"
+     insert-after="zopeorg_theme_custom_images"/>
+  <layer name="zopeorg_theme_styles"
+     insert-after="zopeorg_theme_custom_templates"/>
+ </skin-path>
+
+</object>

Added: zopeorg.theme/zopeorg/theme/profiles/default/viewlets.xml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/viewlets.xml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/viewlets.xml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<object>
+    <order manager="plone.portaltop" skinname="Zope.org Theme"    
+           based-on="Plone Default">
+      <viewlet name="zopeorg.feature" 
+               insert-after="plone.app.i18n.locales.languageselector" />
+      <viewlet name="zopeorg.header.divider" 
+               insert-after="zopeorg.feature" />               
+      <viewlet name="plone.contentviews" 
+               insert-after="*" />               
+    </order>    
+    <order manager="plone.portalheader" skinname="Zope.org Theme"
+           based-on="Plone Default">
+      <viewlet name="zopeorg.searchbox" 
+               insert-after="plone.searchbox" />
+      <viewlet name="zopeorg.anon.personal_bar" 
+               insert-before="plone.searchbox" />         
+    </order>  
+    <order manager="plone.portalfooter" skinname="Zope.org Theme"    
+           based-on="Plone Default">
+      <viewlet name="zopeorg.footer" 
+               insert-before="*" />
+    </order>  
+    <order manager="zopeorg.portalfooter" skinname="Zope.org Theme"    
+           based-on="Plone Default">
+      <viewlet name="plone.site_actions" 
+               insert-before="*" />
+      <viewlet name="zopeorg.copyright" 
+               insert-after="plone.site_actions" />               
+    </order>    
+    
+    <hidden manager="plone.portaltop" skinname="Zope.org Theme">
+      <viewlet name="plone.path_bar" />    
+    </hidden>
+    <hidden manager="plone.contentviews" skinname="Zope.org Theme">
+      <viewlet name="plone.contentviews" />    
+    </hidden>    
+    <hidden manager="plone.portalheader" skinname="Zope.org Theme">
+      <viewlet name="plone.site_actions" />        
+      <viewlet name="plone.siteactions" />    
+      <viewlet name="plone.searchbox" />
+    </hidden>
+    <hidden manager="plone.portalfooter" skinname="Zope.org Theme">
+      <viewlet name="plone.colophon" />    
+      <viewlet name="plone.footer" />    
+    </hidden>    
+    
+</object>

Added: zopeorg.theme/zopeorg/theme/profiles/default/zopeorg.theme_various.txt
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles/default/zopeorg.theme_various.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles/default/zopeorg.theme_various.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+This file is used as a marker in setuphandlers.py.
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/profiles.zcml
===================================================================
--- zopeorg.theme/zopeorg/theme/profiles.zcml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/profiles.zcml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,14 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
+    i18n_domain="zopeorg.theme">
+
+  <genericsetup:registerProfile
+      name="default"
+      title="Zope.org Theme"
+      directory="profiles/default"
+      description='Extension profile for the "Zope.org Theme" Plone theme.'
+      provides="Products.GenericSetup.interfaces.EXTENSION"
+      />
+
+</configure>

Added: zopeorg.theme/zopeorg/theme/setuphandlers.py
===================================================================
--- zopeorg.theme/zopeorg/theme/setuphandlers.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/setuphandlers.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,11 @@
+def setupVarious(context):
+    
+    # Ordinarily, GenericSetup handlers check for the existence of XML files.
+    # Here, we are not parsing an XML file, but we use this text file as a 
+    # flag to check that we actually meant for this import step to be run.
+    # The file is found in profiles/default.
+    
+    if context.readDataFile('zopeorg.theme_various.txt') is None:
+        return
+        
+    # Add additional setup code here
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/dark_grey_horizontal.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/dark_grey_horizontal.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_default.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_default.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_learn.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/feature_learn.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/light_grey_horizontal.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/light_grey_horizontal.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/logo.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/logo.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/orange_horizontal.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/orange_horizontal.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/search_button_bg.png
===================================================================
(Binary files differ)


Property changes on: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_custom_images/search_button_bg.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/IEFixes.css.dtml
===================================================================
--- zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/IEFixes.css.dtml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/IEFixes.css.dtml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,175 @@
+/*
+** Stylesheet with Internet Explorer-specific workarounds.
+*/
+
+/* <dtml-with base_properties> */
+
+* html #portal-columns {
+  width: 100%;
+}
+* html*#portal-columns {
+    width: auto;
+}
+input {
+    margin-bottom: 1px; /* bug fix */
+}
+table.listing td.top {
+    /* insane IE row bug workaround */
+    position: relative;
+    left: -1px;
+    top: -1px;
+}
+div#portal-columns div#portal-column-one,
+div#portal-columns div#portal-column-two {
+    overflow: hidden;
+}
+textarea {
+    width: 97%;
+}
+.visualOverflow {
+    width: 88%;
+}
+.visualGhosted {
+    filter:alpha(opacity=20); 
+}
+
+/* make spans within ABBR have a border in IE6 the same way it is in all other browsers */
+* html abbr .explain {
+    border-bottom: &dtml-borderWidth; dotted &dtml-fontColor;;
+}
+
+/* Fix bottom margin on tabs in IE */
+#portal-globalnav li.selected a {
+position: relative;
+}
+#portal-colophon .colophonIcon {
+    height: 0px !important;
+    height /**/: 15px;
+}
+.actionMenu .actionMenuHeader a {
+    display: inline;
+}
+.actionMenu .actionMenuContent {
+    top: 1.4em;
+}
+
+/* Calendar fixes */
+.ploneCalendar { 
+    border-collapse:collapse;
+    width:auto; 
+    height:1%;
+}
+.ploneCalendar td { 
+    width:1%;
+}
+.ploneCalendar .todaynoevent,
+.ploneCalendar .todayevent {
+    position: relative;
+}
+.hiddenStructure { /* This is necessary to eliminate the 1px high object in
+                      the document flow in place of .hiddenStructure block objects */
+    position: absolute;
+}
+
+/* These work in IE only, changes the look of the scrollbar + textareas 
+   We disabled these in Plone 3.0, but if you want them back, uncomment 
+*/
+/*
+body { 
+    scrollbar-base-color: &dtml-globalBackgroundColor;;
+    scrollbar-highlight-color: &dtml-globalBackgroundColor;;
+    scrollbar-track-color: &dtml-evenRowBackgroundColor;;
+    scrollbar-darkshadow-color: &dtml-evenRowBackgroundColor;;
+    scrollbar-3dlight-color: &dtml-globalBorderColor;;
+    scrollbar-shadow-color: &dtml-globalBorderColor;;
+    scrollbar-arrow-color: &dtml-globalFontColor;;
+}
+*/
+
+/* Holly hack to kill the Peekaboo bug in IE - details at
+   http://www.positioniseverything.net/explorer/peekaboo.html
+   "* html" syntax is added to hide it from IE5/Mac. ~limi
+ */
+
+#floatholder, #float {
+    height: 1%;
+}
+
+* html .link-external,
+* html .link-external a,
+* html .link-mailto a,
+* html .link-mailto {
+     height: 1%; 
+} 
+
+/* Fix for IE float bug */
+* html .visualIEFloatFix,
+* html h1,
+* html h2,
+* html h3,
+* html h4,
+* html h5,
+* html h6,
+* html dd,
+* html .documentDescription,
+* html .visualClear,
+* html .portalMessage,
+* html .portalWarningMessage,
+* html .portalStopMessage,
+* html .system-message,
+* html #error-handling,
+* html .documentContent {
+    height: 0.1%;
+}
+
+/* Fix for IE float bug - have to use the Limi Hack here, since the paragraph
+   tag doesn't take nicely to the height hack above in IE. */
+* html p {
+    position: relative;
+}
+* html h1.documentFirstHeading {
+    height: auto;
+}
+
+/* There appears to be a bug in some IE 6 versions that causes dashed borders
+   to get positioned strangely (i.e. out of the portlet in this case), and
+   to move about when scrolling.  May be related to:
+   http://mtiki.mmf.at/mt/archives/000011.html */
+dd.portletFooter {
+    border-top-style: solid;
+}
+
+/* Rounded corner workarounds for IE */
+* html .portletHeader {
+    height: 1%;
+}
+.portletTopRight, 
+.portletTopLeft {
+    top: 0px;
+}
+.portletTopRight,
+.portletTopLeft,
+.portletBottomRight,
+.portletBottomLeft {
+    font-size: 1px;
+}
+
+/* fix for the horizontal scroll due to the floated searchbox without width definition */
+#portal-searchbox {
+    overflow: auto; 
+}
+body.fullscreen #portal-searchbox {
+    overflow: visible;
+}
+
+
+/* IE doesn't know what to do with the caption element, hide it */
+table.ploneCalendar caption {
+    display: none !important;
+}
+
+#searchGadget {
+    height: 21px;
+}
+
+/* </dtml-with> */

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/base_properties.props
===================================================================
--- zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/base_properties.props	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/base_properties.props	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,54 @@
+title:string=Zope.org Theme's color, font, logo and border defaults
+
+plone_skin:string=Zope.org Theme
+
+logoName:string=logo.png
+
+fontFamily:string="Lucida Grande", Verdana, Lucida, Helvetica, Arial, sans-serif
+fontBaseSize:string=75%
+fontColor:string=#3c3c3c
+fontSmallSize:string=90%
+
+backgroundColor:string=White
+
+linkColor:string=#58cd00
+linkActiveColor:string=#ea6135
+linkVisitedColor:string=#58cd00
+
+borderWidth:string=1px
+borderStyle:string=solid
+borderStyleAnnotations:string=dashed
+
+globalBorderColor:string=#d6d6d6
+globalBackgroundColor:string=#f8f8f8
+globalFontColor:string=#3c3c3c
+
+headingFontFamily:string="Lucida Grande", Verdana, Lucida, Helvetica, Arial, sans-serif
+
+contentViewBorderColor:string=#d6d6d6
+contentViewBackgroundColor:string=#f8f8f8
+contentViewFontColor:string=#3c3c3c
+
+inputFontColor:string=#3c3c3c
+
+textTransform:string=normal
+
+evenRowBackgroundColor:string=#f8f8f8 
+oddRowBackgroundColor:string=transparent
+
+notifyBorderColor:string=#ffa500
+notifyBackgroundColor:string=#ffce7b
+
+discreetColor:string=#76797c
+helpBackgroundColor:string=#ffffe1
+
+portalMinWidth:string=70em
+columnOneWidth:string=16em
+columnTwoWidth:string=32em
+
+orangeLinkColor:string=#ff4300
+orangeBackgroundColor:string=#f73f1d
+orangeBorderColor:string=#f85b30
+orangeLightBorderColor:string=#ffcdc8
+
+greenColor:string=#9dc445

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/main.css.dtml
===================================================================
--- zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/main.css.dtml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/main.css.dtml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,124 @@
+/*
+  This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+  <dtml-with base_properties> (do not remove this)
+  <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/*
+** CUSTOM STYLES FOR ZOPEORG.THEME
+*/
+
+h1, h2 {
+    font-size: 120%;
+}
+#content a:hover {
+/*    color:&dtml-orangeLinkColor;;*/
+    color: #3b80c1;
+}
+#searchGadget {
+/*    min-height: 21px;*/
+}
+
+#searchGadget[class] {
+    padding:2px 0; /* Firefox */
+    line-height:15px; /* Safari */    
+}
+
+#portal-header {
+    background:&dtml-globalBackgroundColor;;
+    border-bottom:1px solid &dtml-globalBorderColor;;
+}
+
+button.searchButton {
+    background: transparent url('&dtml-portal_url;/search_button_bg.png') 50% 50% no-repeat;
+    width: 30px;
+    height: 21px;
+    margin-left: 3px;
+}
+button.searchButton span {
+    display: none;
+}
+#portal-feature {
+    font-size: 1.5em;
+    background: #fff url("&dtml-portal_url;/feature_default.png") 0% 50% no-repeat;
+    padding: 35px 2em 35px 325px;
+    min-height: 157px;
+}
+
+/* sections features styles */
+body.section-learn #portal-feature {
+    background-image:url("&dtml-portal_url;/feature_learn.png");
+}
+
+#portal-header-divider {
+    background: &dtml-globalBackgroundColor;;
+    border: 1px solid &dtml-globalBorderColor;;
+    border-style: solid none;
+    text-align: center;
+}
+#portal-header-divider p {
+    border-top: 5px solid #ededed;
+    margin: 0;
+    padding: 0.2em 2em 0.5em;
+}
+#portal-column-content {
+    padding: 0;
+}
+.contentViews {
+    background: &dtml-contentViewBackgroundColor; url('&dtml-portal_url;/light_grey_horizontal.png') bottom left repeat-x;
+    margin-top:-1px;
+    line-height:1.8em;
+}
+.contentViews li a {
+    padding: 0.3em 1em;
+    color: &dtml-linkColor;;
+    text-decoration: underline;
+}
+.contentViews .selected a {
+    background-color: #fff;
+    border-bottom-color: #fff;
+    text-decoration: none;
+}
+.contentViews a:hover {
+    text-decoration:none;
+}
+.contentActions {
+    background-color: #fff;
+}
+.actionMenu .actionMenuContent li a:hover {
+    color: &dtml-contentViewFontColor;;
+}
+.documentEditable .documentContent {
+    padding: 1em 1em 2em;
+}
+
+.state-private {
+    color: &dtml-orangeLinkColor; !important;
+}
+
+li.formTab a.selected {
+    color: &dtml-orangeLinkColor;;
+}
+
+/* footer styles */
+#zopeorg-footer {
+    text-align:center;
+    margin: 2em 0;
+    font-size: 0.95em;
+}
+#zopeorg-footer #portal-siteactions,
+#zopeorg-footer #zopeorg-copyright {
+    display:inline;
+}
+#zopeorg-footer a {
+    text-decoration: none;
+    color: &dtml-fontColor;;
+}
+
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone 
+   can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/portlets.css.dtml
===================================================================
--- zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/portlets.css.dtml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/portlets.css.dtml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,184 @@
+/*
+  This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+  <dtml-with base_properties> (do not remove this)
+  <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/* Fallback for edit screen if both columns are hidden */
+.managePortletsFallback {
+    margin: 0 0 0 1em;
+}
+
+/* Main portlet elements */
+.portlet {
+    margin: 1px 0 1em 0;
+    border-bottom: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    background-color: &dtml-backgroundColor;;
+}
+.portlet a.tile {
+    display: block;
+    color:&dtml-fontColor;;    
+}
+
+.portletItem a:visited,
+.portletFooter a:visited {
+    color:&dtml-fontColor;;
+}
+
+.portletHeader {
+    background: &dtml-globalFontColor; url("&dtml-portal_url;/dark_grey_horizontal.png") bottom left repeat-x;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-style: solid none;
+    padding: 0em 1em;
+    text-transform: &dtml-textTransform;;
+    line-height: 2.2em;
+    color: #fff;
+    text-align: center;
+}
+.portlet.notify .portletHeader {
+    text-align: left;
+}
+.portletHeader a {
+    color: #fff !important;
+    text-decoration: none;
+}
+.portletItem {
+    margin: 0;
+    padding: 1em;
+    border-left: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-right: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+}
+.portletItem ol {
+    margin: 0 0 0 1em;
+}
+.portletItemDetails {
+    text-align: right;
+    display: block;
+    color: &dtml-fontColor;;
+}
+.portletFooter {
+    background-color: &dtml-evenRowBackgroundColor;;
+    margin: 0;
+    padding: 0.25em 1em;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-style: dotted &dtml-borderStyle; none &dtml-borderStyle;;
+    text-align: right;
+}
+
+/*
+** Calendar elements - used in the calendar rendering
+*/
+.dayPopup {
+    background-color: &dtml-helpBackgroundColor;;
+    border: &dtml-borderWidth; &dtml-borderStyle; Black;
+    padding: 0.2em;
+    position: absolute;
+    visibility: hidden;
+    width: 12em;
+    z-index: 2;
+}
+.date {
+    font-weight: bold;
+}
+.portletCalendar {
+    width: 100%;
+    margin: 1px 0 1em 0;
+    width: 100%;
+}
+.portletCalendar dd {
+    margin: 0;
+    padding: 0;
+}
+.portletCalendar a {
+    text-decoration: none;
+}
+.portletCalendar a:hover {
+    text-decoration: none;
+}
+.ploneCalendar {
+    border-collapse: collapse;
+    border-spacing:0;
+    width: 100%;
+}
+.ploneCalendar td {
+    background-color: transparent;
+    width: 14%;
+    text-align: center;
+    padding: 2px;
+}
+.ploneCalendar .weekdays th {
+    background-color: &dtml-globalBackgroundColor;;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-style: &dtml-borderStyle; none;
+    text-align: center;
+    padding: 2px;
+    font-weight: normal;
+}
+.ploneCalendar .event {
+    background-color: &dtml-globalBackgroundColor;;
+    font-weight: bold;
+}
+.ploneCalendar .todayevent {
+    background-color: &dtml-globalBackgroundColor;;
+    border: 2px &dtml-borderStyle; &dtml-notifyBorderColor;;
+    font-weight: bold;
+}
+.ploneCalendar .todaynoevent {
+    border-collapse: collapse;
+    border: 2px &dtml-borderStyle; &dtml-notifyBorderColor;;
+}
+
+.managePortletsLink {
+    text-align: center;
+}
+
+div.portlets-manager div.section {
+    padding-top: 1em !important;
+}
+
+div.managedPortlet {
+    padding-top:0.5em;
+    padding-bottom:0.5em;
+}
+
+.managedPortlet .portletHeader {
+    min-height: 3em !important;
+}
+
+.managedPortlet a {
+    text-decoration: underline;
+}
+
+.managedPortletActions {
+    display:block;
+    float:right;
+}
+
+.managedPortletActions a {
+    text-decoration: none;
+}
+
+.managedPortletActions a.up,
+.managedPortletActions a.down {
+    color:blue !important;
+}
+
+.managedPortletActions a.delete {
+    color:red !important;
+}
+
+/* Table of Contents styling - essentially a portlet with smaller fonts and aligned right + limited in width */
+.toc {
+    float: right;
+    width: 30%;
+    font-size: 90%;
+    margin: 0 0 0.5em 0.5em;
+}
+
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone 
+   can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+

Added: zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/public.css.dtml
===================================================================
--- zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/public.css.dtml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins/zopeorg_theme_styles/public.css.dtml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,976 @@
+/*
+  This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+  <dtml-with base_properties> (do not remove this)
+  <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/* Accessibility elements, applied by JS */
+body.largeText { font-size: 95%; }
+body.smallText { font-size: 60%; }
+
+/* Padding for the columns */
+
+#portal-column-one .visualPadding {
+    padding: 2.7em;
+}
+#portal-column-two .visualPadding {
+    padding: 2.7em;
+}
+
+/* Content area */
+h1, h2 {
+    font-weight: bold;
+}
+/* Compensate for the inline editing hover, since we have a 1px border */
+body.kssActive h2.inlineEditable:hover,
+body.kssActive h1.inlineEditable:hover {
+    padding-bottom: 1px;
+}
+
+.documentFirstHeading {
+    margin-top: 0;
+}
+
+.documentContent {
+    font-size: 110%;
+    padding: 2.7em 1em;
+}
+.documentContent ul {
+    list-style-image: url(&dtml-portal_url;/bullet.gif);
+    list-style-type: square;
+    margin: 0.5em 0 0 1.5em;
+}
+.documentContent ol {
+    margin: 0.5em 0 0 2.5em;
+}
+
+#visual-portal-wrapper {
+    margin: 0;
+    padding: 0;
+}
+
+/* Logo properties */
+#portal-logo img {
+    border: 0;
+    padding: 0;
+    margin: 0.5em 0em 0.5em 36px;
+    float: left;
+}
+
+#portal-top {
+    /* Top section */
+    margin: 0;
+    padding: 0;
+    background-color: transparent;
+}
+
+/* Site-wide action menu - font size, contact, index, sitemap etc */
+#portal-siteactions {
+    background-color: transparent;
+    white-space: nowrap;
+    list-style-image: none;
+    list-style-type: none;
+    margin: 2em 0;
+    height: auto;
+    line-height: normal;
+    padding: 3px 0;
+}
+#portal-siteactions li {
+    display: inline;
+}
+#portal-siteactions li a {
+    color: &dtml-fontColor;;
+    height: auto;
+    padding: 0 0.6em 0 0.2em;
+    margin: 0;
+    text-decoration: none;
+    text-transform: &dtml-textTransform;;
+    border-right: 1px solid &dtml-fontColor;;
+}
+#portal-siteactions li.selected a,
+#portal-siteactions li a:hover {
+    color: &dtml-globalFontColor;;
+}
+
+/* Searchbox style and positioning */
+
+#portal-searchbox {
+    float: right;
+    background-color: transparent;
+    margin: 1.5em 0 0 0;
+    padding: 0 1em 0 0;
+    text-align: right;
+    text-transform: &dtml-textTransform;;
+    white-space: nowrap;
+    z-index: 2;
+}
+#portal-advanced-search {
+    margin-top: 0.2em;
+    clear: both;
+}
+#portal-advanced-search a {
+    color: &dtml-discreetColor;;
+    text-decoration: none;
+    text-transform: &dtml-textTransform;;
+}
+
+/* Search results elements */
+
+dl.searchResults dt {
+    font-size: 140%;
+    font-weight: normal;
+}
+
+form.searchPage {
+    text-align: center;
+}
+
+input.searchPage {
+    font-size: 200% !important;
+}
+
+form.searchPage input.searchButton {
+    background-position:5px 7px;
+    padding:1px 10px 1px 25px;
+}
+
+/* LiveSearch styles */
+.LSRes {
+    font-family:  <dtml-var fontFamily>;
+    visibility: visible;
+    color: &dtml-globalFontColor;;
+    background-color: &dtml-backgroundColor;;
+    vertical-align: middle;
+    display:block;
+    list-style-image: none;
+    list-style-type: none;
+    text-align: left;
+    min-width: 16.5em;
+    text-transform: none;
+    margin-left: 0;
+    line-height: 1.1em;
+}
+#LSHighlight,
+.LSHighlight {
+    background-color: &dtml-globalBackgroundColor;;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    color: &dtml-globalFontColor;;
+}
+.LSRow {
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-backgroundColor;;
+    white-space: normal;
+    padding:0;
+    margin: 0;
+    list-style-image: none;
+    list-style-type: none;
+}
+.LSRow a {
+    text-decoration: none;
+    font-weight:bold;
+    white-space:nowrap
+}
+.LSDescr {
+    color: &dtml-discreetColor;;
+    text-transform: &dtml-textTransform;;
+    padding-left:2.1em;
+    margin-top:-0.1em;
+}
+.LSResult {
+    position: relative;
+    display: block;
+    text-align: right;
+    padding-top: 5px;
+    margin: 0;
+    left: 3px;
+    z-index: 3;
+}
+.LSShadow {
+    position: relative;
+    text-align: right;
+}
+.livesearchContainer {
+    background-color: &dtml-backgroundColor;;
+    margin-top: 0;
+    padding: 0 !important;
+    position: absolute;
+    right: 0px;
+    /* Currently exposes a rendering bug in Mozilla */
+    top: 0;
+    white-space: normal;
+    font-family:  <dtml-var fontFamily>;
+    visibility: visible;
+    text-align: left;
+    color: &dtml-globalFontColor;;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    width: 30em;
+    text-transform: none;
+}
+* html .livesearchContainer {
+    padding: &dtml-borderWidth; !important;
+    padding-top: 0 !important;
+    background-color: &dtml-globalBorderColor;;
+    border: 0;
+}
+#livesearchLegend {
+    line-height: 1em;
+    margin-top: -2em;
+    margin-left: -0.1em;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-bottom: 0;
+}
+* html #livesearchLegend {
+    margin-top: -1.9em;
+    margin-left: -8px;
+    position: relative;
+}
+
+/* Workaround for Internet Explorer's broken z-index implementation */
+.LSIEFix {
+    background-color: &dtml-backgroundColor;;
+    padding: 0.5em !important;
+    z-index: 20;
+}
+.LSBox {
+    clear: left;
+    float: left;
+    text-align: right;
+    padding-right: 1px;
+    display:block;
+}
+#LSNothingFound {
+    text-align: center;
+    padding: 2px;
+}
+.LSBox label {
+    font-weight: normal;
+}
+
+/* The global section tabs. */
+#portal-globalnav {
+    background-color: transparent;
+    padding: 0em;
+    white-space: nowrap;
+    list-style: none;
+    margin: 0;
+    height: auto;
+    line-height: 4em;
+    text-align:center;
+}
+#portal-globalnav li {
+    display: inline;
+}
+#portal-globalnav li a {
+    /* The normal, unselected tabs. They are all links */
+    background-color: transparent;
+    height: auto;
+/*    margin-right: 0.5em;*/
+    padding: 0em 1em;
+    text-transform: &dtml-textTransform;;
+    font-weight: bold;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBackgroundColor;;
+}
+#portal-globalnav li.selected a,
+#portal-globalnav li a:hover {
+    background-color: #fff;
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    color: &dtml-globalFontColor;;
+    text-decoration: none;
+}
+
+#portal-personaltools {
+    /* Bar with personalized menu (user preferences, favorites etc) */
+    line-height: 1.6em;
+    color: &dtml-fontColor;;
+    padding: 0em 1em 0em 1em;
+    margin: 0;
+    text-align: right;
+    text-transform: &dtml-textTransform;;
+    list-style: none;
+    float: right;
+}
+#portal-header #portal-personaltools {
+    margin-top:2em;
+    margin-left: -2em;
+    font-size: &dtml-fontSmallSize;;
+}
+#portal-personaltools .portalUser {
+    background: transparent url(&dtml-portal_url;/user.gif) center left no-repeat;
+    padding-left: 18px;
+}
+#portal-personaltools .portalNotLoggedIn {
+    /* Used on all descriptions relevant to those not logged in */
+    color: &dtml-fontColor;;
+    padding: 0;
+    background: transparent;
+    background-image: none;
+}
+#portal-personaltools li {
+    color: &dtml-globalFontColor;;
+    margin-left: 1em;
+    display: inline;
+}
+#portal-personaltools li a {
+    color: &dtml-linkColor;;
+}
+#portal-personaltools .visualIconPadding {
+    padding-left: 10px;
+}
+.visualCaseSensitive {
+    text-transform: none;
+}
+#portal-languageselector {
+    margin: 0 1em 0 1em;
+    float:right;
+}
+#portal-languageselector li {
+    display: inline;
+}
+
+.documentEditable {
+    padding: 0em 0em 1em 0em;
+}
+#content-news h1 {
+    margin-bottom: 1em;
+}
+/* Only h5/h6 headlines in the content area should have the discreet color */
+#content h5,
+#content h6 {
+    color: &dtml-discreetColor;;
+}
+.newsItem {
+    margin-bottom: 1em;
+    border-bottom: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+}
+.newsImage {
+    border: 1px solid #ccc;
+}
+.newsImageContainer {
+    float:right;
+    margin: 0 0 0.5em 1em;
+    width: 202px;
+}
+.newsContent {
+    padding: 0 1em 1em 1em;
+}
+.newsContent ul,
+.newsContent li {
+    display: block;
+    list-style: none;
+    list-style-image: none;
+    margin: 0;
+    padding: 0;
+}
+.newsAbout {
+    display: block;
+    color: &dtml-discreetColor;;
+    font-size: &dtml-fontSmallSize;;
+    padding: 0;
+    margin-top: 0;
+    list-style: none;
+    list-style-image: none;
+    float: right;
+    text-align: right;
+}
+.newsAbout li {
+    display: inline;
+}
+.newsFooter {
+
+}
+.newsFooter li {
+    display: inline;
+    margin: 0 1em 0 0;
+}
+
+.documentActions {
+    margin: 1em 0;
+    padding: 0;
+    text-align: right;
+    border-top: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+}
+.documentActions ul {
+    margin: 0;
+    padding: 0 0.5em;
+    display: block;
+    margin-top: -0.9em;
+    list-style-type: none;
+    list-style-image: none;
+}
+.documentActions li {
+    display: inline;
+    margin: 0 0.5em;
+    padding: 0 0.25em;
+    background-color: &dtml-backgroundColor;;
+}
+.documentActions a {
+    border: none !important;
+    text-decoration: none;
+    color: &dtml-orangeLinkColor;;
+}
+
+/* Status messages */
+
+dl.portalMessage {
+    font-size: &dtml-fontSmallSize;;
+}
+dl.portalMessage a {
+    color: black;
+    border: none;
+    text-decoration: underline;
+}
+dl.portalMessage dt {
+    background-color: #996; 
+    border: 1px solid #996;
+    font-weight: bold;
+    float: left;
+    margin: 0 0.5em 0 0;
+    padding: 0.5em 0.75em;
+    color: White;
+    line-height: 1.25em;
+}
+dl.portalMessage dd {
+    background-color: #ffffe3;
+    border: 1px solid #996;
+    padding: 0.5em 0.5em; 
+    margin: 0;
+    line-height: 1.25em;
+}
+dl.warning dt {
+    background-color: #d80; 
+    border: 1px solid #d80;
+}
+dl.error dt {
+    background-color: #d00; 
+    border-color: #d00;
+}
+dl.warning dd {
+    background-color: #fd7; 
+    border-color: #d80;
+}
+dl.error dd {
+    background-color: #fd7; 
+    border-color: #d80;
+}
+
+.documentDescription {
+    /* The summary text describing the document */
+    font-weight: bold;
+    display: block;
+    margin: 0em 0em 0.5em 0em;
+    line-height: 1.5em;
+}
+.documentByLine {
+    font-size: &dtml-fontSmallSize;;
+    font-weight: normal;
+    color: &dtml-discreetColor;;
+    margin-bottom: 0.5em;
+}
+dl.searchResults span.documentByLine {
+    display: block;
+}
+#category ul {
+    list-style-image: none;
+    list-style-type: none;
+    display: inline;
+    margin: 0;
+}
+#category ul li {
+    display: inline;
+}
+.discussion {
+    margin-top: 1em;
+}
+.even {
+    background-color: &dtml-evenRowBackgroundColor;;
+}
+.odd {
+    background-color: &dtml-oddRowBackgroundColor;;
+}
+.visualHighlight {
+    background-color: #ffc;
+}
+.discreet {
+    color: &dtml-discreetColor;;
+    font-size: &dtml-fontSmallSize;;
+    font-weight: normal;
+}
+.pullquote {
+    padding: 0 1em 0 1em;
+    margin: 0 0 1em 1em;
+    font-weight: bold;
+    color: &dtml-orangeLinkColor;;
+    float: right;
+    width: 35%;
+    clear: right;
+    background-color: &dtml-backgroundColor;;
+    border-left: 4px solid &dtml-globalBorderColor;;
+}
+.callout {
+    font-weight: bold;
+    color: &dtml-orangeLinkColor;;
+    padding: 0px 1em;
+}
+
+.notify,
+.documentEditable * .notify {
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-notifyBorderColor;;
+}
+.card {
+    background-color: &dtml-globalBackgroundColor;;
+    border-color: &dtml-globalBorderColor;;
+    border-width: &dtml-borderWidth;;
+    border-style: &dtml-borderStyle;;
+    float: left;
+    margin: 1em;
+    text-align: center;
+    width: 110px;
+    padding: 1em 0;
+}
+.card a {
+    text-decoration: none;
+}
+.portrait {
+    background-color: &dtml-globalBackgroundColor;;
+    border-color: &dtml-globalBorderColor;;
+    border-width: &dtml-borderWidth;;
+    border-style: &dtml-borderStyle;;
+    font-size: &dtml-fontSmallSize;;
+    margin: 0.5em;
+    padding: 1em 0 0.5em 0;
+    text-align: center;
+    width: 100px;
+}
+.portraitPhoto {
+    border: 1px solid black;
+}
+/* The table used for listings - horizontal and vertical variants */
+table.listing,
+.stx table {
+    /* The default table for document listings. Contains name, document types, modification times etc in a file-browser-like fashion */
+    border-collapse: collapse;
+    border-left: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-bottom: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    font-size: &dtml-fontSmallSize;;
+    margin: 1em 0em 1em 0em;
+}
+table.orangePortlet {
+    border-bottom-color: &dtml-orangeLightBorderColor;;
+    border-left-color: &dtml-orangeLightBorderColor;;    
+    font-size: 1em;
+}
+table.listing th,
+.stx table th {
+/*    background: &dtml-globalBackgroundColor;;*/
+    background:&dtml-fontColor;;
+    color: #fff;
+    border-top: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-bottom: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    border-right: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    font-weight: normal;
+    padding: 0.25em 0.5em;
+    text-transform: &dtml-textTransform;;
+}
+table.orangePortlet th {
+    background: &dtml-orangeBackgroundColor; url('&dtml-portal_url;/orange_horizontal.png') bottom left repeat-x;
+    border-top-color: &dtml-orangeLightBorderColor;;
+    border-bottom-color: &dtml-orangeLightBorderColor;; 
+    border-right-color: &dtml-orangeLightBorderColor;;    
+    color: #fff;
+    padding: 0 1em;
+    line-height:2.2em;
+}
+table.listing .top {
+    border-left: &dtml-borderWidth; &dtml-borderStyle; &dtml-backgroundColor;;
+    border-top: &dtml-borderWidth; &dtml-borderStyle; &dtml-backgroundColor; ! important;
+    border-right: &dtml-borderWidth; &dtml-borderStyle; &dtml-backgroundColor; ! important;
+    text-align: right ! important;
+    padding: 0em 0em 1em 0em;
+}
+table.listing .listingCheckbox {
+    text-align: center;
+}
+table.listing td,
+.stx table td {
+    border-right: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    padding: 0.25em 0.5em;
+}
+table.orangePortlet td {
+    border-right-color: &dtml-orangeLightBorderColor;;
+}
+table.orangePortlet td a {
+    color: &dtml-orangeLinkColor;;
+}
+table.listing a:hover {
+    text-decoration: underline;
+}
+table.listing img {
+    vertical-align: middle;
+}
+table.listing td a label,
+.stx table td a label {
+    cursor: pointer;
+}
+
+/* Vertical addition class */
+table.vertical {
+    background-color: &dtml-backgroundColor;;	
+}
+table.vertical th {
+    padding: 0.5em;
+}
+table.vertical td {
+    border-top: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    padding: 0.5em;
+}
+
+/* grid addition class */
+
+table.grid td {
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    padding: 0.5em;
+}
+
+/* plain table class with light gray borders */
+
+table.plain,
+table.plain td,
+table.plain th {
+    border: 1px solid #ccc;
+    padding: 0.5em;
+    border-collapse: collapse;
+}
+
+/* Batch selector */
+.listingBar {
+    background-color: &dtml-globalBackgroundColor;;
+    border-color: &dtml-globalBorderColor;;
+    border-style: &dtml-borderStyle;;
+    border-width: &dtml-borderWidth;;
+    padding: 0em 1em;
+    text-align: center;
+    text-transform: &dtml-textTransform;;
+    vertical-align: top;
+    margin: 1em 0em;
+    font-size: 94%;
+    clear: both;
+}
+.listingBar span.previous,
+.listingPrevious {
+    text-align: left;
+    float: left;
+    margin-right: 1em;
+}
+.listingBar span.next,
+.listingNext {
+    text-align: right;
+    float: right;
+    margin-left: 1em;
+}
+.listingBar img {
+    vertical-align: middle;
+}
+.listingBar a {
+    text-decoration: none;
+}
+.tileItem {
+    border-top: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+    padding-top: 0.5em;
+    margin-top: 0.5em;
+}
+.tileHeadline {
+    border: none;
+    font-size: 110%;
+    font-weight: bold;
+}
+.tileHeadline a {
+    text-decoration: none;
+}
+.tileBody {
+    margin-bottom: 0.5em;
+}
+.tileImage {
+    float: right;
+    margin: 0 0 0.5em 0.5em;
+    border: 1px solid black;
+}
+.eventDetails {
+    float: right;
+    width: 20em;
+    clear: right;
+}
+/* Useful deviations from regular style on elements */
+
+/* List classes without markers */
+ul.visualNoMarker,
+ol.visualNoMarker {
+    list-style-type: none;
+    list-style-image: none;
+    margin: 0.5em 0 0 0;
+    line-height: 1em;
+}
+
+ul.discreet {
+    list-style-image: none;    
+    list-style-type: disc;
+}
+
+textarea.proportional {
+    font: 100% <dtml-var fontFamily>;
+}
+.productCredits {
+    text-align: right;
+    font-size: &dtml-fontSmallSize;;
+    clear: both;
+    font-weight: normal;
+    color: &dtml-discreetColor;;
+}
+#portal-footer {
+    float: none;
+    line-height: 1.2em;
+    margin: 2em 0em 1em 0em;
+    padding: 0.5em 0em 1em 0em;
+    text-align: center;
+}
+#portal-footer p {
+    margin: 0.25em 0;
+}
+#portal-footer a {
+    text-decoration: none;
+    color: &dtml-linkColor;;
+    border: none;
+}
+#portal-footer a:visited {
+    color: &dtml-linkColor;;
+}
+#portal-footer a:hover {
+    text-decoration: underline;
+}
+/* Sitemap styles */
+#portal-sitemap {
+    list-style: none;
+    list-style-image: none;
+    margin: 0;
+    font-size: 90%;
+    border: none;
+}
+#portal-sitemap a {
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-backgroundColor;;
+}
+#portal-sitemap a:hover {
+    border: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
+}
+#portal-sitemap .navTreeLevel1 {
+    padding-left: 1em;
+    border-left: 0.5em solid &dtml-globalBorderColor;;
+    margin: 0 0 0 0.5em;
+}
+#portal-sitemap .navTreeLevel2 {
+    padding-left: 1em;
+    border-left: 0.5em solid &dtml-globalBackgroundColor;;
+    margin: 0 0 0 0.6em;
+}
+
+/* Album view classes */
+.photoAlbumEntry {
+    float: left;
+    height: 185px;
+    width: 143px;
+    margin: 0em;
+    padding: 0px 6px 0px 9px;
+    text-align: center;
+    background-image: url('&dtml-portal_url;/polaroid-single.png');
+    background-repeat: no-repeat;
+}
+.photoAlbumEntry img {
+    border: 1px solid #ccc;
+    display: block;
+    margin: 0 auto;
+}
+.photoAlbumEntryWrapper {
+    /*display: block;*/
+    height: 130px;
+    width: 128px;
+    margin-bottom: 7px;
+}
+.photoAlbumEntry a {
+    display: block;
+    text-decoration: none;
+    font-size: &dtml-fontSmallSize;;
+    height: 169px;
+    width: 130px;
+    margin: 16px auto 0px;
+}
+.photoAlbumFolder {
+    background-image: url('&dtml-portal_url;/polaroid-multi.png');
+    background-repeat: no-repeat;
+}
+.photoAlbumEntryTitle {
+    color: &dtml-discreetColor;;
+    display: block;
+    overflow: hidden;
+    width: 128px;
+    height: 3.6em;
+}
+
+/* Link types */
+a.link-parent {
+    display: block;
+    background: transparent url(&dtml-portal_url;/arrowUp.gif) 4px 5px no-repeat;
+    padding: 1px 0px 10px 16px;
+    font-size: &dtml-fontSmallSize;;
+    text-decoration: none;
+}
+
+/* For ghosted elements */
+.visualGhosted {
+    opacity: 0.2;
+}
+
+/* Fullscreen */
+body.fullscreen #portal-logo,
+body.fullscreen #portal-siteactions {
+    display: none;
+}
+body.fullscreen #portal-globalnav {
+    margin-top: 4em;
+}
+body.fullscreen #portal-searchbox {
+    margin: 0.5em 2em 0 0.5em;
+    padding: 0;
+    position: relative;
+    z-index: 3;
+}
+
+/* Kupu image alignment classes */
+.image-left {
+   float: left;
+   clear: both;
+   margin: 0.5em 1em 0.5em 0;
+   border: 1px solid Black;
+}
+.image-inline {
+   float: none;
+}
+.image-right {
+   float: right;
+   clear: both;
+   margin: 0.5em;
+   border: 1px solid Black;
+}
+dd.image-caption {
+   text-align:left;
+   padding: 0; margin:0;
+}
+dl.captioned {
+   padding: 10px;
+}
+
+/* Dashboard */
+#dashboard-info-message {
+    padding-top: 0.5em;
+}
+
+#dashboard {
+    width: 68em;
+}
+
+#dashboard-portlets1,
+#dashboard-portlets2,
+#dashboard-portlets3
+{
+    float:left;
+    width:16em;
+    padding:0.7em 1.3em 0 0;
+}
+
+#dashboard-portlets4 {
+    float:left;
+    width:16em;
+    padding-top:0.7em;
+}
+
+#dashboard-portlets1 a,
+#dashboard-portlets2 a,
+#dashboard-portlets3 a,
+#dashboard-portlets4 a {
+    border-bottom:medium none;
+}
+
+#dashboard-portlets1 dl.portlet,
+#dashboard-portlets2 dl.portlet,
+#dashboard-portlets3 dl.portlet,
+#dashboard-portlets4 dl.portlet {
+    margin-bottom:1.5em;
+}
+
+div.managedPortlet.portlet {
+    border-bottom:none;
+}
+#dashboard select {
+    width:100%;
+}
+
+.portletAssignments {
+    margin-top:1.5em;
+}
+#dashboard-portlets1 div.managedPortlet a,
+#dashboard-portlets2 div.managedPortlet a,
+#dashboard-portlets3 div.managedPortlet a,
+#dashboard-portlets4 div.managedPortlet a {
+    text-decoration: none;
+    color: &dtml-globalFontColor;;
+    border-bottom:1px solid &dtml-globalFontColor;;
+}
+
+div.managedPortlet .portletHeader {
+    text-align:left;
+}
+
+#dashboard-portlets1 div.managedPortlet .portletHeader a,
+#dashboard-portlets2 div.managedPortlet .portletHeader a,
+#dashboard-portlets3 div.managedPortlet .portletHeader a,
+#dashboard-portlets4 div.managedPortlet .portletHeader a {
+    color: #fff;
+}
+
+#dashboard-portlets1 div.managedPortlet span a,
+#dashboard-portlets2 div.managedPortlet span a,
+#dashboard-portlets3 div.managedPortlet span a,
+#dashboard-portlets4 div.managedPortlet span a{
+    border-bottom:none;
+}
+
+#dashboard-actions {
+    float:right;
+}
+
+#dashboard-actions ul {
+    list-style-image:none;
+    list-style-position:outside;
+    list-style-type:none;    
+    margin-top:0;
+}
+
+#dashboard-actions ul li {
+    display:inline;
+    padding-left:0.7em;
+}
+
+#dashboard-actions ul li.portalUser {
+    background:transparent url(&dtml-portal_url;/user.gif) no-repeat scroll left center;
+    padding-left:18px;
+}
+
+/* manage portlets */
+
+.section div {
+    padding-top:0.5em;
+    padding-bottom:0.5em;
+}
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone 
+   can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+

Added: zopeorg.theme/zopeorg/theme/skins.zcml
===================================================================
--- zopeorg.theme/zopeorg/theme/skins.zcml	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/skins.zcml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,10 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:cmf="http://namespaces.zope.org/cmf"
+    i18n_domain="zopeorg.theme">
+
+   <cmf:registerDirectory name="zopeorg_theme_custom_images"/>
+   <cmf:registerDirectory name="zopeorg_theme_custom_templates"/>
+   <cmf:registerDirectory name="zopeorg_theme_styles"/>
+
+</configure>
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/tests.py
===================================================================
--- zopeorg.theme/zopeorg/theme/tests.py	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/tests.py	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,54 @@
+import unittest
+
+from zope.testing import doctestunit
+from zope.component import testing
+from Testing import ZopeTestCase as ztc
+
+from Products.Five import zcml
+from Products.Five import fiveconfigure
+from Products.PloneTestCase import PloneTestCase as ptc
+from Products.PloneTestCase.layer import PloneSite
+ptc.setupPloneSite()
+
+import zopeorg.theme
+
+class TestCase(ptc.PloneTestCase):
+    class layer(PloneSite):
+        @classmethod
+        def setUp(cls):
+            fiveconfigure.debug_mode = True
+            zcml.load_config('configure.zcml',
+                             zopeorg.theme)
+            fiveconfigure.debug_mode = False
+
+        @classmethod
+        def tearDown(cls):
+            pass
+    
+
+def test_suite():
+    return unittest.TestSuite([
+
+        # Unit tests
+        #doctestunit.DocFileSuite(
+        #    'README.txt', package='zopeorg.theme',
+        #    setUp=testing.setUp, tearDown=testing.tearDown),
+
+        #doctestunit.DocTestSuite(
+        #    module='zopeorg.theme.mymodule',
+        #    setUp=testing.setUp, tearDown=testing.tearDown),
+
+
+        # Integration tests that use PloneTestCase
+        #ztc.ZopeDocFileSuite(
+        #    'README.txt', package='zopeorg.theme',
+        #    test_class=TestCase),
+
+        #ztc.FunctionalDocFileSuite(
+        #    'browser.txt', package='zopeorg.theme',
+        #    test_class=TestCase),
+        
+        ])
+
+if __name__ == '__main__':
+    unittest.main(defaultTest='test_suite')
\ No newline at end of file

Added: zopeorg.theme/zopeorg/theme/version.txt
===================================================================
--- zopeorg.theme/zopeorg/theme/version.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg/theme/version.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+0.1
\ No newline at end of file

Added: zopeorg.theme/zopeorg.theme-configure.zcml
===================================================================
--- zopeorg.theme/zopeorg.theme-configure.zcml	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme-configure.zcml	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+<include package="zopeorg.theme" />
\ No newline at end of file

Added: zopeorg.theme/zopeorg.theme.egg-info/PKG-INFO
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/PKG-INFO	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/PKG-INFO	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,16 @@
+Metadata-Version: 1.0
+Name: zopeorg.theme
+Version: 0.1dev
+Summary: Plone 3.0 visual theme for zope.org project
+Home-page: http://zope.org
+Author: Denis Mishunov
+Author-email: denis at webcouturier.com
+License: GPL
+Description: UNKNOWN
+Keywords: zope plone theme
+Platform: UNKNOWN
+Classifier: Framework :: Plone
+Classifier: Framework :: Zope2
+Classifier: Framework :: Zope3
+Classifier: Programming Language :: Python
+Classifier: Topic :: Software Development :: Libraries :: Python Modules

Added: zopeorg.theme/zopeorg.theme.egg-info/SOURCES.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/SOURCES.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/SOURCES.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,18 @@
+README.txt
+setup.cfg
+setup.py
+zopeorg/__init__.py
+zopeorg.theme.egg-info/PKG-INFO
+zopeorg.theme.egg-info/SOURCES.txt
+zopeorg.theme.egg-info/dependency_links.txt
+zopeorg.theme.egg-info/entry_points.txt
+zopeorg.theme.egg-info/namespace_packages.txt
+zopeorg.theme.egg-info/not-zip-safe
+zopeorg.theme.egg-info/requires.txt
+zopeorg.theme.egg-info/top_level.txt
+zopeorg/theme/__init__.py
+zopeorg/theme/setuphandlers.py
+zopeorg/theme/tests.py
+zopeorg/theme/browser/__init__.py
+zopeorg/theme/browser/interfaces.py
+zopeorg/theme/browser/viewlets.py

Added: zopeorg.theme/zopeorg.theme.egg-info/dependency_links.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/dependency_links.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/dependency_links.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+

Added: zopeorg.theme/zopeorg.theme.egg-info/entry_points.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/entry_points.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/entry_points.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1,3 @@
+
+      # -*- Entry points: -*-
+      
\ No newline at end of file

Added: zopeorg.theme/zopeorg.theme.egg-info/namespace_packages.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/namespace_packages.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/namespace_packages.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+zopeorg

Added: zopeorg.theme/zopeorg.theme.egg-info/not-zip-safe
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/not-zip-safe	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/not-zip-safe	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+

Added: zopeorg.theme/zopeorg.theme.egg-info/paster_plugins.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/paster_plugins.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/paster_plugins.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+PasteScript

Added: zopeorg.theme/zopeorg.theme.egg-info/requires.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/requires.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/requires.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+setuptools
\ No newline at end of file

Added: zopeorg.theme/zopeorg.theme.egg-info/top_level.txt
===================================================================
--- zopeorg.theme/zopeorg.theme.egg-info/top_level.txt	                        (rev 0)
+++ zopeorg.theme/zopeorg.theme.egg-info/top_level.txt	2007-12-06 16:22:44 UTC (rev 82164)
@@ -0,0 +1 @@
+zopeorg



More information about the Checkins mailing list