[IMP] add new module website_project
authorChristophe Matthieu <chm@openerp.com>
Mon, 19 Aug 2013 14:28:12 +0000 (16:28 +0200)
committerChristophe Matthieu <chm@openerp.com>
Mon, 19 Aug 2013 14:28:12 +0000 (16:28 +0200)
bzr revid: chm@openerp.com-20130819142812-vvb9e5s2gzg94hwz

addons/website/views/views.xml
addons/website/website.py
addons/website_project/__init__.py [new file with mode: 0644]
addons/website_project/__openerp__.py [new file with mode: 0644]
addons/website_project/controllers/__init__.py [new file with mode: 0644]
addons/website_project/controllers/main.py [new file with mode: 0644]
addons/website_project/views/website_project.xml [new file with mode: 0644]

index 7c167f4..7b8d48c 100644 (file)
 
         <template id="404">
                 <t t-call="website.layout">
-                    <div class="container" t-if="editable">
+                    <div class="container" t-if="editable and path">
                         <div class="well mt32">
                             <p>
                                 This page does not exists, but you can create
index f6976d1..aa446d7 100644 (file)
@@ -78,9 +78,9 @@ class website(osv.osv):
             logger.error(err)
             values['error'] = err[1]
             return self.render('website.401', values)
-        except ValueError:
-            logger.error("Website Rendering Error.\n\n%s" % (traceback.format_exc()))
-            return self.render('website.404', values)
+        # except ValueError:
+        #     logger.error("Website Rendering Error.\n\n%s" % (traceback.format_exc()))
+        #     return self.render('website.404', values)
         except Exception:
             logger.error("Website Rendering Error.\n\n%s" % (traceback.format_exc()))
             if values['editable']:
diff --git a/addons/website_project/__init__.py b/addons/website_project/__init__.py
new file mode 100644 (file)
index 0000000..355939a
--- /dev/null
@@ -0,0 +1 @@
+import controllers
\ No newline at end of file
diff --git a/addons/website_project/__openerp__.py b/addons/website_project/__openerp__.py
new file mode 100644 (file)
index 0000000..62f8302
--- /dev/null
@@ -0,0 +1,18 @@
+{
+'name': 'Public Project',
+    'category': 'Website',
+    'summary': 'Publish Your Public Projects',
+    'version': '1.0',
+    'description': """
+OpenERP Blog
+============
+
+        """,
+    'author': 'OpenERP SA',
+    'depends': ['website', 'project'],
+    'data': [
+        'views/website_project.xml',
+    ],
+    'qweb': ['static/src/xml/*.xml'],
+    'installable': True,
+}
diff --git a/addons/website_project/controllers/__init__.py b/addons/website_project/controllers/__init__.py
new file mode 100644 (file)
index 0000000..8ee9bae
--- /dev/null
@@ -0,0 +1 @@
+import main
diff --git a/addons/website_project/controllers/main.py b/addons/website_project/controllers/main.py
new file mode 100644 (file)
index 0000000..d79bd78
--- /dev/null
@@ -0,0 +1,16 @@
+# -*- coding: utf-8 -*-
+
+from openerp.addons.web import http
+from openerp.addons.web.http import request
+
+class website_project(http.Controller):
+
+    @http.route(['/projects/'], type='http', auth="public")
+    def blog(self, **post):
+        website = request.registry['website']
+        project_obj = request.registry['project.project']
+        project_ids = project_obj.search(request.cr, request.uid, [('privacy_visibility', "=", "public")])
+        values = website.get_rendering_context({
+            'project_ids': project_obj.browse(request.cr, request.uid, project_ids)
+        })
+        return website.render("website_project.index", values)
diff --git a/addons/website_project/views/website_project.xml b/addons/website_project/views/website_project.xml
new file mode 100644 (file)
index 0000000..1817080
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+<data>
+
+
+    <!-- Layout add nav and footer -->
+
+    <template id="footer_custom" inherit_id="website.layout" name="Custom Footer">
+        <xpath expr="//body/header//ul[@id='top_menu']/li[last()]" position="before">
+            <li><a href="/projects/">Projects</a></li>
+        </xpath>
+    </template>
+
+    <!-- Page --> 
+
+    <template id="index" name="Projects">
+        <t t-call="website.layout">
+            <t t-set="title">Blog</t>
+            <div class="container">
+                <div t-foreach="project_ids" t-as="project_id">
+                    <h4 t-field="project_id.name"/>
+                    <div t-foreach="project_id.tasks" t-as="task">
+                        <a t-attf-href="/admin#view_type=form&amp;model=project.task&amp;id=#{task.id}"><span t-field="task.name"/></a>
+                    </div>
+                </div>
+            </div>
+        </t>
+    </template>
+
+
+ </data>
+</openerp>