11 changed files with 244 additions and 0 deletions
			
			
		@ -0,0 +1,23 @@ | 
				
			|||
# -*- coding: utf-8 -*- | 
				
			|||
############################################################################## | 
				
			|||
# | 
				
			|||
#    Cybrosys Technologies Pvt. Ltd. | 
				
			|||
#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). | 
				
			|||
#    Author: Fasluca(<https://www.cybrosys.com>) | 
				
			|||
#    you can modify it under the terms of the GNU LESSER | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			|||
# | 
				
			|||
#    It is forbidden to publish, distribute, sublicense, or sell copies | 
				
			|||
#    of the Software or modified copies of the Software. | 
				
			|||
# | 
				
			|||
#    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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			|||
# | 
				
			|||
#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3) along with this program. | 
				
			|||
#    If not, see <https://www.gnu.org/licenses/>. | 
				
			|||
# | 
				
			|||
############################################################################## | 
				
			|||
import controllers | 
				
			|||
@ -0,0 +1,43 @@ | 
				
			|||
# -*- coding: utf-8 -*- | 
				
			|||
############################################################################## | 
				
			|||
# | 
				
			|||
#    Cybrosys Technologies Pvt. Ltd. | 
				
			|||
#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). | 
				
			|||
#    Author: Fasluca(<https://www.cybrosys.com>) | 
				
			|||
#    you can modify it under the terms of the GNU LESSER | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			|||
# | 
				
			|||
#    It is forbidden to publish, distribute, sublicense, or sell copies | 
				
			|||
#    of the Software or modified copies of the Software. | 
				
			|||
# | 
				
			|||
#    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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			|||
# | 
				
			|||
#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3) along with this program. | 
				
			|||
#    If not, see <https://www.gnu.org/licenses/>. | 
				
			|||
# | 
				
			|||
############################################################################## | 
				
			|||
{ | 
				
			|||
    'name': 'Event Attachments on Website', | 
				
			|||
    'version': '10.0.1.0.0', | 
				
			|||
    'summary': """Download Documents That are Attached to the Events from Website""", | 
				
			|||
    'description': 'This Module allows customer to download documents ' | 
				
			|||
                   'that are attached to the Events from website', | 
				
			|||
    'category': 'Website', | 
				
			|||
    'author': 'Cybrosys Techno Solutions', | 
				
			|||
    'company': 'Cybrosys Techno Solutions', | 
				
			|||
    'website': "https://www.cybrosys.com", | 
				
			|||
    'depends': ['document', 'website_event'], | 
				
			|||
    'data': [ | 
				
			|||
        'views/template.xml' | 
				
			|||
    ], | 
				
			|||
    'images': ['static/description/banner.jpg'], | 
				
			|||
    'license': 'LGPL-3', | 
				
			|||
    'demo': [], | 
				
			|||
    'installable': True, | 
				
			|||
    'auto_install': False, | 
				
			|||
    'application': False, | 
				
			|||
} | 
				
			|||
@ -0,0 +1,23 @@ | 
				
			|||
# -*- coding: utf-8 -*- | 
				
			|||
############################################################################## | 
				
			|||
# | 
				
			|||
#    Cybrosys Technologies Pvt. Ltd. | 
				
			|||
#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). | 
				
			|||
#    Author: Fasluca(<https://www.cybrosys.com>) | 
				
			|||
#    you can modify it under the terms of the GNU LESSER | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			|||
# | 
				
			|||
#    It is forbidden to publish, distribute, sublicense, or sell copies | 
				
			|||
#    of the Software or modified copies of the Software. | 
				
			|||
# | 
				
			|||
#    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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			|||
# | 
				
			|||
#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3) along with this program. | 
				
			|||
#    If not, see <https://www.gnu.org/licenses/>. | 
				
			|||
# | 
				
			|||
############################################################################## | 
				
			|||
import main | 
				
			|||
@ -0,0 +1,70 @@ | 
				
			|||
# -*- coding: utf-8 -*- | 
				
			|||
############################################################################## | 
				
			|||
# | 
				
			|||
#    Cybrosys Technologies Pvt. Ltd. | 
				
			|||
#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). | 
				
			|||
#    Author: Fasluca(<https://www.cybrosys.com>) | 
				
			|||
#    you can modify it under the terms of the GNU LESSER | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3), Version 3. | 
				
			|||
# | 
				
			|||
#    It is forbidden to publish, distribute, sublicense, or sell copies | 
				
			|||
#    of the Software or modified copies of the Software. | 
				
			|||
# | 
				
			|||
#    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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. | 
				
			|||
# | 
				
			|||
#    You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE | 
				
			|||
#    GENERAL PUBLIC LICENSE (LGPL v3) along with this program. | 
				
			|||
#    If not, see <https://www.gnu.org/licenses/>. | 
				
			|||
# | 
				
			|||
############################################################################## | 
				
			|||
 | 
				
			|||
import base64 | 
				
			|||
from cStringIO import StringIO | 
				
			|||
from werkzeug.utils import redirect | 
				
			|||
 | 
				
			|||
 | 
				
			|||
from odoo import http, tools, _ | 
				
			|||
from odoo.http import request | 
				
			|||
from odoo.addons.website.models.website import slug | 
				
			|||
from odoo.addons.website.controllers.main import QueryURL | 
				
			|||
from odoo.addons.website_event.controllers.main import WebsiteEventController | 
				
			|||
 | 
				
			|||
 | 
				
			|||
class WebsiteEventControllerEx(WebsiteEventController): | 
				
			|||
 | 
				
			|||
    @http.route(['/event/<model("event.event"):event>/register'], type='http', auth="public", website=True) | 
				
			|||
    def event_register(self, event, **post): | 
				
			|||
        if event.state == 'done': | 
				
			|||
            return request.redirect("/event/%s" % slug(event)) | 
				
			|||
        attachments = request.env['ir.attachment'].search( | 
				
			|||
            [('res_model', '=', 'event.event'), | 
				
			|||
             ('res_id', '=', event.id)], order='id') | 
				
			|||
        values = { | 
				
			|||
            'event': event, | 
				
			|||
            'main_object': event, | 
				
			|||
            'range': range, | 
				
			|||
            'attachments': attachments, | 
				
			|||
        } | 
				
			|||
        return request.render("website_event.event_description_full", values) | 
				
			|||
 | 
				
			|||
    @http.route(['/attachment/download'], type='http', auth='public') | 
				
			|||
    def download_attachment(self, attachment_id): | 
				
			|||
        # Check if this is a valid attachment id | 
				
			|||
        attachment = request.env['ir.attachment'].sudo().search_read( | 
				
			|||
            [('id', '=', int(attachment_id))], | 
				
			|||
            ["name", "datas", "file_type", "res_model", "res_id", "type", "url"] | 
				
			|||
        ) | 
				
			|||
 | 
				
			|||
        if attachment["type"] == "url": | 
				
			|||
            if attachment["url"]: | 
				
			|||
                return redirect(attachment["url"]) | 
				
			|||
            else: | 
				
			|||
                return request.not_found() | 
				
			|||
        elif attachment["datas"]: | 
				
			|||
            data = StringIO(base64.standard_b64decode(attachment["datas"])) | 
				
			|||
            return http.send_file(data, filename=attachment['name'], as_attachment=True) | 
				
			|||
        else: | 
				
			|||
            return request.not_found() | 
				
			|||
| 
		 After Width: | Height: | Size: 144 KiB  | 
| 
		 After Width: | Height: | Size: 50 KiB  | 
| 
		 After Width: | Height: | Size: 56 KiB  | 
| 
		 After Width: | Height: | Size: 17 KiB  | 
@ -0,0 +1,62 @@ | 
				
			|||
<section class="oe_container"> | 
				
			|||
    <div class="oe_spaced"> | 
				
			|||
        <h2 class="oe_slogan">Event Attachments on Website</h2> | 
				
			|||
        <span class="center-block oe_slogan">This Module allows customer to download documents that are attached to the events from website.</span> | 
				
			|||
        <h4 class="oe_slogan" style="font-size: 23px;">Author : Cybrosys Techno Solutions , www.cybrosys.com</h4> | 
				
			|||
    </div> | 
				
			|||
</section> | 
				
			|||
 | 
				
			|||
<section class="oe_container oe_dark"> | 
				
			|||
    <div class="oe_row oe_spaced"> | 
				
			|||
        <h3 class="oe_slogan">Attach your documents</h3> | 
				
			|||
        <div class="oe_span12"> | 
				
			|||
            <div class="oe_row_img oe_centered"> | 
				
			|||
                <img class="oe_picture oe_screenshot" src="event.png"> | 
				
			|||
            </div> | 
				
			|||
            <span class="center-block" style="text-align: center;">☛ Attach your documents like, brochures on event.</span> | 
				
			|||
        </div> | 
				
			|||
        <br> | 
				
			|||
    </div> | 
				
			|||
</section> | 
				
			|||
 | 
				
			|||
<section class="oe_container"> | 
				
			|||
    <div class="oe_row oe_spaced"> | 
				
			|||
        <h3 class="oe_slogan">Download from Website</h3> | 
				
			|||
        <div class="oe_span12"> | 
				
			|||
            <div class="oe_row_img oe_centered"> | 
				
			|||
                <img class="oe_picture oe_screenshot" src="website.png"> | 
				
			|||
            </div> | 
				
			|||
            <span class="center-block" style="text-align: center;">☛ Visitors of your Website can download these attachments</span> | 
				
			|||
        </div> | 
				
			|||
        <br> | 
				
			|||
    </div> | 
				
			|||
</section> | 
				
			|||
 | 
				
			|||
<section class="oe_container oe_dark"> | 
				
			|||
		<h2 class="oe_slogan" style="margin-top:20px;" >Need Any Help?</h2> | 
				
			|||
		<div class="oe_slogan" style="margin-top:10px !important;"> | 
				
			|||
            <div> | 
				
			|||
				<a  class="btn btn-primary btn-lg mt8" | 
				
			|||
				style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com"><i | 
				
			|||
				class="fa fa-envelope"></i> Email </a> <a | 
				
			|||
				class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" | 
				
			|||
				href="https://www.cybrosys.com/contact/"><i | 
				
			|||
				class="fa fa-phone"></i> Contact Us </a> <a | 
				
			|||
				class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" | 
				
			|||
				href="https://www.cybrosys.com/odoo-customization-and-installation/"><i | 
				
			|||
				class="fa fa-check-square"></i> Request Customization </a> | 
				
			|||
	        </div> | 
				
			|||
            <br> | 
				
			|||
		    <img src="cybro_logo.png" style="width: 190px; margin-bottom: 20px;" class="center-block"> | 
				
			|||
            <div> | 
				
			|||
			  <a href="https://twitter.com/cybrosys" target="_blank"><i class="fa fa-2x fa-twitter" style="color:white;background: #00a0d1;width:35px;"></i></a></td> | 
				
			|||
              <a href="https://www.linkedin.com/company/cybrosys-technologies-pvt-ltd" target="_blank"><i class="fa fa-2x fa-linkedin" style="color:white;background: #31a3d6;width:35px;padding-left: 3px;"></i></a></td> | 
				
			|||
              <a href="https://www.facebook.com/cybrosystechnologies" target="_blank"><i class="fa fa-2x fa-facebook" style="color:white;background: #3b5998;width:35px;padding-left: 8px;"></i></a></td> | 
				
			|||
              <a href="https://plus.google.com/106641282743045431892/about" target="_blank"><i class="fa fa-2x fa-google-plus" style="color:white;background: #c53c2c;width:35px;padding-left: 3px;"></i></a></td> | 
				
			|||
              <a href="https://in.pinterest.com/cybrosys" target="_blank"><i class="fa fa-2x fa-pinterest" style="color:white;background: #ac0f18;width:35px;padding-left: 3px;"></i></a></td> | 
				
			|||
            </div> | 
				
			|||
		</div> | 
				
			|||
</section> | 
				
			|||
 | 
				
			|||
 | 
				
			|||
 | 
				
			|||
| 
		 After Width: | Height: | Size: 110 KiB  | 
@ -0,0 +1,23 @@ | 
				
			|||
<?xml version="1.0" encoding="utf-8"?> | 
				
			|||
<odoo> | 
				
			|||
    <template id="event_attachments" inherit_id="website_event.event_description_full"> | 
				
			|||
        <xpath expr="//div[@class='col-md-4 css_noprint']/div[@class='panel panel-default'][1]" position="after"> | 
				
			|||
            <t t-if="attachments"> | 
				
			|||
                <div class="panel panel-default"> | 
				
			|||
                    <div class="panel-heading"> | 
				
			|||
                        <h4>Related Documents</h4> | 
				
			|||
                    </div> | 
				
			|||
                    <div class="panel-body"> | 
				
			|||
 | 
				
			|||
                        <t t-foreach="attachments" t-as="attachment"> | 
				
			|||
                            <a t-att-href="'/attachment/download?attachment_id=%i' % attachment.id"> | 
				
			|||
                                <span t-esc="attachment.name" class="fa fa-download"/> | 
				
			|||
                            </a><br/> | 
				
			|||
                        </t> | 
				
			|||
                    </div> | 
				
			|||
 | 
				
			|||
                </div> | 
				
			|||
            </t> | 
				
			|||
        </xpath> | 
				
			|||
    </template> | 
				
			|||
</odoo> | 
				
			|||
					Loading…
					
					
				
		Reference in new issue