Skip to content

/ Zope / gocept svn checkins / Archive / 2008 / 2008-11 / SVN: r6985 - in CMFWebmail/trunk/gocept/webmail: . browser browser/resources browser/resources/images browser/resources/styles browser/resources/yui skins

[ << ] [ >> ]

[ SVN: r6983 - in CMFWebmail/trunk: . gocept ... ] [ SVN: r6989 - CMFWebmail gocept.webmail / Thomas ... ]

SVN: r6985 - in CMFWebmail/trunk/gocept/webmail: . browser browser/resources browser/resources/images browser/resources/styles browser/resources/yui skins
Christian Zagrodnick <cz(at)gocept.com>
2008-11-05 12:33:36 [ FULL ]
Author: zagy
Date: Wed Nov  5 12:33:34 2008
New Revision: 6985

Log:
moved things into the right place

simplified creating modules


Added:
   CMFWebmail/trunk/gocept/webmail/browser/module-loader.pt
      - copied, changed from r6983,
CMFWebmail/trunk/gocept/webmail/browser/profile.pt
   CMFWebmail/trunk/gocept/webmail/browser/resources/
   CMFWebmail/trunk/gocept/webmail/browser/resources/composer-main.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/composer-main.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/composer.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/composer.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/connection.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/connection.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/draft.js   (props changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/draft.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/images/   (props changed)
      - copied from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_images/
   CMFWebmail/trunk/gocept/webmail/browser/resources/management-main.js  
(props changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/management-main.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/management.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/management.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/message.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/message.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/styles/   (props changed)
      - copied from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_styles/
   CMFWebmail/trunk/gocept/webmail/browser/resources/utilities.js   (props
changed)
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/utilities.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/webmailer-main.js
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/webmailer-main.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/webmailer.js
      - copied unchanged from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_javascript/webmailer.js
   CMFWebmail/trunk/gocept/webmail/browser/resources/yui/   (props changed)
      - copied from r6983,
CMFWebmail/trunk/gocept/webmail/skins/cmfwebmail_yui/yui/
Removed:
   CMFWebmail/trunk/gocept/webmail/browser/profile.pt
   CMFWebmail/trunk/gocept/webmail/browser/profile.py
   CMFWebmail/trunk/gocept/webmail/skins/
Modified:
   CMFWebmail/trunk/gocept/webmail/README.txt
   CMFWebmail/trunk/gocept/webmail/browser/configure.zcml
   CMFWebmail/trunk/gocept/webmail/browser/webmailer.py

Modified: CMFWebmail/trunk/gocept/webmail/README.txt
==============================================================================
--- CMFWebmail/trunk/gocept/webmail/README.txt	(original)
+++ CMFWebmail/trunk/gocept/webmail/README.txt	Wed Nov  5 12:33:34 2008
(at)(at) -9,7 +9,7 (at)(at)
 running[#setup]_:
 
 >>> browser.js.open_tab()
->>> time.sleep(0.1)
+>>> time.sleep(0.2)
 >>> browser.open('/webmail')
 >>> browser.getLink('Join').click()
 >>> time.sleep(0.5)

Modified: CMFWebmail/trunk/gocept/webmail/browser/configure.zcml
==============================================================================
--- CMFWebmail/trunk/gocept/webmail/browser/configure.zcml	(original)
+++ CMFWebmail/trunk/gocept/webmail/browser/configure.zcml	Wed Nov  5 12:33:34
2008
(at)(at) -11,28 +11,30 (at)(at)
   <browser:page
      for="gocept.restmail.interfaces.IProfile"
      name="index_html"
-     class=".profile.Profile"
-     template="profile.pt"
+     class=".webmailer.Webmailer"
+     template="module-loader.pt"
      permission="gocept.webmail.View"
      />
 
   <browser:page
      for="gocept.restmail.interfaces.IProfile"
      name="management"
-     template="../skins/cmfwebmail_templates/management.pt"
+     class=".webmailer.Management"
+     template="module-loader.pt"
      permission="gocept.webmail.View"
      />
 
   <browser:page
      for="gocept.restmail.interfaces.IDraftMessage"
      name="webmail_composer"
-     template="../skins/cmfwebmail_templates/webmail_composer.pt"
+     class=".webmailer.Composer"
+     template="module-loader.pt"
      permission="gocept.webmail.View"
      />
 
   <browser:resourceDirectory
     name="gocept.webmail"
-    directory="../skins"/>
+    directory="resources"/>
 
 
 </configure>

Copied: CMFWebmail/trunk/gocept/webmail/browser/module-loader.pt (from r6983,
CMFWebmail/trunk/gocept/webmail/browser/profile.pt)
==============================================================================
--- CMFWebmail/trunk/gocept/webmail/browser/profile.pt	(original)
+++ CMFWebmail/trunk/gocept/webmail/browser/module-loader.pt	Wed Nov  5
12:33:34 2008
(at)(at) -1,34 +1,38 (at)(at)
-<!DOCTYPE html
-  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html class="webmailer">
   <head 
-    tal:define="webmailer nocall:context/(at)(at)webmailer;
-                yui_base_url
string:${webmailer/++resource++gocept.webmail}/cmfwebmail_yui/yui/build">
-    <title>Portal</title>
-    
+    tal:define="
+    webmailer nocall:context/(at)(at)webmailer;
+    profile nocall:context/(at)(at)profile;
+    resources view/resources;
+    yui_base_url string:$resources/yui/build">
+    <title tal:content="view/title">Portal</title>
+
     <script type="text/javascript" tal:content="string:
       var yui_base_url = '$yui_base_url';
-      var app_base_url =
'${webmailer/++resource++gocept.webmail}/cmfwebmail_javascript';
-      var profile_url = '${context/absolute_url}';
-      var banner_url = '${view/banner_url}';">
+      var app_base_url = '$resources';
+      var profile_url = '${profile/absolute_url}';
+      var banner_url = '${webmailer/banner_url}';
+      ${view/declarations}
+      ">
     </script>
 
     <script type="text/javascript"
       tal:attributes="src
string:$yui_base_url/yuiloader/yuiloader-beta-min.js">
     </script>
     <script type="text/javascript" src="utilities.js"
-      tal:attributes="src
string:${webmailer/++resource++gocept.webmail}/cmfwebmail_javascript/utilities.js">
+      tal:attributes="src string:$resources/utilities.js">
     </script> 
-    <script type="text/javascript" src="webmailer-main.js"
-      tal:attributes="src
string:${webmailer/++resource++gocept.webmail}/cmfwebmail_javascript/webmailer-main.js">
+    <script type="text/javascript" src="main.js"
+      tal:attributes="src string:$resources/${view/main_file}">
     </script> 
 
     <link rel="stylesheet" type="text/css"
-      tal:attributes="href
string:${webmailer/++resource++gocept.webmail}/cmfwebmail_styles/webmail.css"/>
+      tal:attributes="href string:$resources/styles/webmail.css"/>
 
   </head>
 
   <body class="yui-skin-sam">
   </body>
+
 </html>

Modified: CMFWebmail/trunk/gocept/webmail/browser/webmailer.py
==============================================================================
--- CMFWebmail/trunk/gocept/webmail/browser/webmailer.py	(original)
+++ CMFWebmail/trunk/gocept/webmail/browser/webmailer.py	Wed Nov  5 12:33:34
2008
(at)(at) -2,13 +2,15 (at)(at)
 # See also LICENSE.txt
 
 import gocept.restmail.profile
+import xml.sax.saxutils
+import zope.tales.engine
 
 
 class RedirectToProfile(object):
-    """XXX"""
+    """Redirects to profile of currently logged in user."""
 
     def __call__(self):
-        """XXX"""
+        """call"""
         user = self.request.AUTHENTICATED_USER.getUserName()
         profile = self.ensure_profile(user)
         self.request.response.redirect(profile.aq_inner.absolute_url())
(at)(at) -22,3 +24,55 (at)(at)
             profile.manage_addProduct['MailHost'].manage_addMailHost(
                 'default-smtp') #XXX this is the wrong place for this
         return profile
+
+
+class Module(object):
+
+    c = zope.tales.engine.Engine.compile
+    declare = dict()
+
+    (at)property
+    def declarations(self):
+        result = []
+        context = zope.tales.engine.Engine.getContext(
+            request=self.request,
+            context=self.context.aq_inner,
+            view=self)
+        for key, value in self.declare.items():
+            result.append('      var %s = %s;' % (
+                key, xml.sax.saxutils.quoteattr(value(context))))
+
+        return '\n'.join(result)
+
+    (at)property
+    def resources(self):
+        return self.context.aq_inner.restrictedTraverse(
+            '(at)(at)webmailer/++resource++gocept.webmail')()
+
+
+class Webmailer(Module):
+    """Webmail module."""
+
+    main_file = 'webmailer-main.js'
+    title = 'Portal'
+
+
+class Management(Module):
+    """Account management module."""
+
+    main_file = 'management-main.js'
+    title = 'Manage accounts'
+
+
+class Composer(Module):
+    """Composer module."""
+
+    main_file = 'composer-main.js'
+    title = 'Compose'
+
+    c = Module.c
+    declare = dict(
+        editor_style_url=c('string:${view/resources}/styles/editor.css'),
+        draft_url=c('context/absolute_url'),
+    )
+

MailBoxer