'views/website_views.xml',
'views/snippets.xml',
'views/themes.xml',
+ 'views/res_config.xml',
],
'demo': [
'data/website_demo.xml',
import website
import ir_qweb
import ir_http
+import res_config
import test_models
--- /dev/null
+
+from openerp.osv import fields, osv
+
+class website_config_settings(osv.osv_memory):
+ _name = 'website.config.settings'
+ _inherit = 'base.config.settings'
+
+ _columns = {
+ 'website_id': fields.many2one('website', string="website", required=True),
+
+ 'language_ids': fields.related('website_id', 'language_ids', type='many2many', relation='res.lang', string='Languages'),
+ 'default_lang_id': fields.related('website_id', 'default_lang_id', type='many2one', relation='res.lang', string='Default language'),
+ 'default_lang_code': fields.related('website_id', 'default_lang_code', type="char", string="Default language code"),
+ 'google_analytics_key': fields.related('website_id', 'google_analytics_key', type="char", string='Google Analytics Key'),
+
+ 'social_twitter': fields.related('website_id', 'social_twitter', type="char", string='Twitter Account'),
+ 'social_facebook': fields.related('website_id', 'social_facebook', type="char", string='Facebook Account'),
+ 'social_github': fields.related('website_id', 'social_github', type="char", string='GitHub Account'),
+ 'social_linkedin': fields.related('website_id', 'social_linkedin', type="char", string='LinkedIn Account'),
+ 'social_youtube': fields.related('website_id', 'social_youtube', type="char", string='Youtube Account'),
+ 'social_googleplus': fields.related('website_id', 'social_googleplus', type="char", string='Google+ Account'),
+
+ 'module_website_sale': fields.boolean('E-Commerce', help='Sell Your Products Online'),
+ 'module_website_blog': fields.boolean('Blog', help='News, Blogs, Announces, Discussions'),
+ 'module_website_event': fields.boolean('Event', help='Schedule, Promote and Sell Events'),
+ 'module_website_hr_recruitment': fields.boolean('Job Position', help='Promote Your Job Positions'),
+ }
+
+ def on_change_website_id(self, cr, uid, ids, id, context=None):
+ website_data = self.pool.get('website').read(cr, uid, [id], [], context=context)[0]
+ values = {}
+ for fname, v in website_data.items():
+ if self._columns.get(fname):
+ values[fname] = v and self._columns[fname]._type == 'many2one' and v[0] or v
+ return {'value' : values}
+
+ _defaults = {
+ 'website_id': lambda self,cr,uid,c: self.pool.get('website').search(cr, uid, [], context=c)[0],
+ }
menu.append('<li><a data-action="ace" href="#">HTML Editor</a></li>');
menu.append('<li class="js_change_theme"><a href="/page/website.themes">Change Theme</a></li>');
menu.append('<li><a href="/web#return_label=Website&action=website.action_module_website">Install Apps</a></li>');
- menu.append('<li><a href="/web#return_label=Website&action=website.action_website_form">Website Settings</a></li>');
+ menu.append('<li><a href="/web#return_label=Website&action=website.action_website_configuration">Website Settings</a></li>');
self.trigger('rte:customize_menu_ready');
}
);
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+ <data>
+
+ <record id="view_website_config_settings" model="ir.ui.view">
+ <field name="name">Website settings</field>
+ <field name="model">website.config.settings</field>
+ <field name="arch" type="xml">
+ <form string="Configure Website" version="7.0" class="oe_form_configuration">
+ <header>
+ <button string="Apply" type="object" name="execute" class="oe_highlight"/>
+ or
+ <button string="Cancel" type="object" name="cancel" class="oe_link"/>
+ </header>
+ <div>
+ <field name="website_id" invisible="True" on_change="on_change_website_id(website_id)"/>
+ <group string="Domain">
+ <label for="google_analytics_key"/>
+ <div name="google_analytics_key">
+ <div>
+ <div name="google_analytics_key" class="oe_inline">
+ <field name="google_analytics_key" placeholder="UA-XXXXXXXX-Y"/>
+ </div>
+ </div>
+ </div>
+ </group>
+ <group string="Social Media">
+ <label for="social_twitter"/>
+ <div name="social_twitter">
+ <div class="oe_inline">
+ <field name="social_twitter" placeholder="https://twitter.com/openerp"/>
+ </div>
+ </div>
+ <label for="social_facebook"/>
+ <div name="social_facebook">
+ <div class="oe_inline">
+ <field name="social_facebook" placeholder="https://facebook.com/openerp"/>
+ </div>
+ </div>
+ <label for="social_github"/>
+ <div name="social_github">
+ <div class="oe_inline">
+ <field name="social_github" placeholder="https://youraccount.github.io"/>
+ </div>
+ </div>
+ <label for="social_linkedin"/>
+ <div name="social_linkedin">
+ <div class="oe_inline">
+ <field name="social_linkedin" placeholder="http://www.linkedin.com/company/openerp"/>
+ </div>
+ </div>
+ <label for="social_youtube"/>
+ <div name="social_youtube">
+ <div class="oe_inline">
+ <field name="social_youtube" placeholder="http://www.youtube.com/channel/HCU842OHPPNrQ"/>
+ </div>
+ </div>
+ <label for="social_googleplus"/>
+ <div name="social_googleplus">
+ <div class="oe_inline">
+ <field name="social_googleplus" placeholder="https://plus.google.com/+openerp"/>
+ </div>
+ </div>
+ </group>
+ <group string="Language">
+ <label for="language_ids"/>
+ <div name="language_ids">
+ <div>
+ <div name="language_ids" class="oe_inline">
+ <field name="language_ids" widget="many2many_checkboxes"/>
+ </div>
+ </div>
+ </div>
+ <label for="default_lang_id"/>
+ <div name="default_lang_id">
+ <div>
+ <div name="default_lang_id" class="oe_inline">
+ <field name="default_lang_id" widget="selection"/>
+ </div>
+ </div>
+ </div>
+ </group>
+ <group string="Your Apps">
+ <label for="module_website_sale"/>
+ <div name="module_website_sale">
+ <div>
+ <div name="module_website_sale" class="oe_inline">
+ <field name="module_website_sale"/>
+ </div>
+ </div>
+ </div>
+ <label for="module_website_event"/>
+ <div name="module_website_event">
+ <div>
+ <div name="module_website_event" class="oe_inline">
+ <field name="module_website_event"/>
+ </div>
+ </div>
+ </div>
+ <label for="module_website_blog"/>
+ <div name="module_website_blog">
+ <div>
+ <div name="module_website_blog" class="oe_inline">
+ <field name="module_website_blog"/>
+ </div>
+ </div>
+ </div>
+ <label for="module_website_hr_recruitment"/>
+ <div name="module_website_hr_recruitment">
+ <div>
+ <div name="module_website_hr_recruitment" class="oe_inline">
+ <field name="module_website_hr_recruitment"/>
+ </div>
+ </div>
+ </div>
+ <button type="action"
+ name="%(website.action_module_website)d"
+ string="All Your Website Apps" class="oe_link"/>
+ </group>
+ </div>
+ </form>
+ </field>
+ </record>
+
+ <record id="action_website_configuration" model="ir.actions.act_window">
+ <field name="name">Website Settings</field>
+ <field name="res_model">website.config.settings</field>
+ <field name="view_mode">form</field>
+ <field name="target">inline</field>
+ </record>
+
+ <menuitem id="menu_website_configuration" parent="base.menu_config"
+ sequence="90" action="action_website_configuration"/>
+
+ </data>
+</openerp>
</field>
</record>
- <record id="action_website_form" model="ir.actions.act_window">
- <field name="name">Website Settings</field>
- <field name="type">ir.actions.act_window</field>
- <field name="res_model">website</field>
- <field name="res_id">1</field>
- <field name="view_mode">form</field>
- <field name="help">Create and manage the companies websites.</field>
- <field name="target">inline</field>
- </record>
- <menuitem action="action_website_form" id="menu_action_website_form" parent="base.menu_config"/>
-
<record id="view_base_language_install" model="ir.ui.view">
<field name="name">view_base_language_install.inherit</field>
<field name="model">base.language.install</field>
def _get_pricelist(self, cr, uid, ids, field_name, arg, context=None):
# FIXME: oh god kill me now
pricelist_id = self.ecommerce_get_pricelist_id(cr, uid, ids, context=context)
- return dict.fromkeys(
- ids, self.pool['product.pricelist'].browse(
- cr, SUPERUSER_ID, pricelist_id, context=context))
+ return dict.fromkeys(ids, pricelist_id)
_columns = {
'pricelist_id': fields.function(