[FIX] doc
@ -42,13 +42,13 @@ help:
|
||||
clean:
|
||||
-rm -rf $(BUILDDIR)/*
|
||||
|
||||
STATICS = _extensions/odoo_ext/static
|
||||
STATICS = _extensions/flectra_ext/static
|
||||
# TODO: add bootstrap files
|
||||
LESSFILES = $(wildcard $(STATICS)/*.less)
|
||||
$(STATICS)/style.css: $(LESSFILES)
|
||||
$(LESSC) $(STATICS)/style.less $(STATICS)/style.css
|
||||
|
||||
html: _extensions/odoo_ext/static/style.css
|
||||
html: _extensions/flectra_ext/static/style.css
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
||||
|
@ -1,7 +1,7 @@
|
||||
:orphan:
|
||||
|
||||
======================================
|
||||
JSDoc parser/Sphinx extension for Odoo
|
||||
JSDoc parser/Sphinx extension for Flectra
|
||||
======================================
|
||||
|
||||
Why?
|
||||
@ -28,7 +28,7 @@ What?
|
||||
|
||||
If it were possible to generate JSDoc annotations from our relatively
|
||||
well-defined code structures, it was obviously possible to extract documentary
|
||||
information directly from it, hence this Odoo-specific package/extension
|
||||
information directly from it, hence this Flectra-specific package/extension
|
||||
trying to do exactly that.
|
||||
|
||||
This package should eventually provide:
|
||||
|
@ -13,9 +13,9 @@ DECLARATOR_INIT_TO_REF = ('Literal', 'Identifier', 'MemberExpression')
|
||||
class ModuleMatcher(Visitor):
|
||||
"""Looks for structures of the form::
|
||||
|
||||
odoo.define($string, function ($name) {
|
||||
flectra.define($string, function ($name) {
|
||||
|
||||
These are *Odoo module definitions*, upon encountering one the
|
||||
These are *Flectra module definitions*, upon encountering one the
|
||||
matcher:
|
||||
|
||||
* creates a module entry, optionally associated with the module comment
|
||||
@ -32,7 +32,7 @@ class ModuleMatcher(Visitor):
|
||||
# we're interested in expression statements (toplevel call)
|
||||
if utils.match(node, {'expression': {
|
||||
'callee': {
|
||||
'object': {'name': 'odoo'},
|
||||
'object': {'name': 'flectra'},
|
||||
'property': {'name': 'define'},
|
||||
},
|
||||
}}):
|
||||
@ -191,9 +191,9 @@ BASE_SCOPE = BaseScope(None, {
|
||||
})),
|
||||
]
|
||||
}),
|
||||
'odoo': jsdoc.UnknownNS({
|
||||
'name': u'odoo',
|
||||
'doc': u"Odoo",
|
||||
'flectra': jsdoc.UnknownNS({
|
||||
'name': u'flectra',
|
||||
'doc': u"Flectra",
|
||||
'_members': [
|
||||
('name', jsdoc.PropertyDoc({'name': u'csrf_token', 'type': u'{String}'})),
|
||||
]
|
||||
|
@ -1,6 +1,6 @@
|
||||
:orphan:
|
||||
|
||||
These files should be run via pytest_, simply install pytest and from the top
|
||||
of the Odoo project run ``pytest doc/_extensions``.
|
||||
of the Flectra project run ``pytest doc/_extensions``.
|
||||
|
||||
.. _pytest: https://pytest.org/
|
||||
|
@ -6,7 +6,7 @@ from support import params, parse
|
||||
|
||||
def test_classvar():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.A', function(require) {
|
||||
flectra.define('a.A', function(require) {
|
||||
var Class = require('Class');
|
||||
/**
|
||||
* This is my class-kai
|
||||
@ -28,7 +28,7 @@ def test_classvar():
|
||||
|
||||
def test_classret():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.A', function(require) {
|
||||
flectra.define('a.A', function(require) {
|
||||
var Class = require('Class');
|
||||
/**
|
||||
* This is my class-kai
|
||||
@ -46,7 +46,7 @@ def test_classret():
|
||||
|
||||
def test_methods():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.A', function(require) {
|
||||
flectra.define('a.A', function(require) {
|
||||
var Class = require('Class');
|
||||
return Class.extend({
|
||||
/**
|
||||
@ -92,7 +92,7 @@ def test_methods():
|
||||
|
||||
def test_mixin_explicit():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.A', function (require) {
|
||||
flectra.define('a.A', function (require) {
|
||||
var Class = require('Class');
|
||||
var mixins = require('mixins');
|
||||
/**
|
||||
@ -108,7 +108,7 @@ def test_mixin_explicit():
|
||||
|
||||
def test_mixin_implicit():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.A', function(require) {
|
||||
flectra.define('a.A', function(require) {
|
||||
var Class = require('Class');
|
||||
var Mixin = require('Mixin');
|
||||
/**
|
||||
@ -127,7 +127,7 @@ def test_mixin_implicit():
|
||||
|
||||
def test_instanciation():
|
||||
[A, a] = parse("""
|
||||
odoo.define('A', function (r) {
|
||||
flectra.define('A', function (r) {
|
||||
var Class = r('Class');
|
||||
/**
|
||||
* @class A
|
||||
@ -136,7 +136,7 @@ def test_instanciation():
|
||||
foo: function () {}
|
||||
});
|
||||
});
|
||||
odoo.define('a', function (r) {
|
||||
flectra.define('a', function (r) {
|
||||
var A = r('A');
|
||||
var a = new A;
|
||||
return a;
|
||||
@ -147,7 +147,7 @@ def test_instanciation():
|
||||
|
||||
def test_non_function_properties():
|
||||
[A] = parse("""
|
||||
odoo.define('A', function (r) {
|
||||
flectra.define('A', function (r) {
|
||||
var Class = r('Class');
|
||||
return Class.extend({
|
||||
template: 'thing',
|
||||
@ -163,7 +163,7 @@ def test_non_function_properties():
|
||||
|
||||
def test_non_extend_classes():
|
||||
[mod] = parse("""
|
||||
odoo.define('A', function () {
|
||||
flectra.define('A', function () {
|
||||
/**
|
||||
* @class
|
||||
*/
|
||||
@ -175,11 +175,11 @@ def test_non_extend_classes():
|
||||
|
||||
def test_extend():
|
||||
[a, _] = parse("""
|
||||
odoo.define('A', function (require) {
|
||||
flectra.define('A', function (require) {
|
||||
var Class = require('Class');
|
||||
return Class.extend({});
|
||||
});
|
||||
odoo.define('B', function (require) {
|
||||
flectra.define('B', function (require) {
|
||||
var A = require('A');
|
||||
A.include({
|
||||
/** A property */
|
||||
@ -203,7 +203,7 @@ def test_extend():
|
||||
@pytest.mark.skip(reason="Need to implement member/var-parsing?")
|
||||
def test_members():
|
||||
[mod] = parse("""
|
||||
odoo.define('A', function (r) {
|
||||
flectra.define('A', function (r) {
|
||||
var Class = r('Class');
|
||||
return Class.extend({
|
||||
init: function () {
|
||||
|
@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Test various crap patterns found in Odoo code to ensure they don't blow up
|
||||
Test various crap patterns found in Flectra code to ensure they don't blow up
|
||||
the parser thingie
|
||||
"""
|
||||
from autojsdoc.parser import jsdoc
|
||||
@ -8,7 +8,7 @@ from support import parse
|
||||
|
||||
def test_export_external():
|
||||
[mod] = parse("""
|
||||
odoo.define('module', function () {
|
||||
flectra.define('module', function () {
|
||||
return $.Deferred().reject();
|
||||
});
|
||||
""")
|
||||
@ -17,7 +17,7 @@ def test_export_external():
|
||||
|
||||
def test_extend_jq():
|
||||
parse("""
|
||||
odoo.define('a', function (r) {
|
||||
flectra.define('a', function (r) {
|
||||
$.extend($.expr[':'], { a: function () {} });
|
||||
$.fn.extend({ a: function () {} });
|
||||
});
|
||||
@ -25,14 +25,14 @@ def test_extend_jq():
|
||||
|
||||
def test_extend_dynamic():
|
||||
parse("""
|
||||
odoo.define('a', function () {
|
||||
flectra.define('a', function () {
|
||||
foo.bar.baz[qux + '_external'] = function () {};
|
||||
});
|
||||
""")
|
||||
|
||||
def test_extend_deep():
|
||||
parse("""
|
||||
odoo.define('a', function () {
|
||||
flectra.define('a', function () {
|
||||
var eventHandler = $.summernote.eventHandler;
|
||||
var dom = $.summernote.core.dom;
|
||||
dom.thing = function () {};
|
||||
@ -44,7 +44,7 @@ def test_extend_deep():
|
||||
|
||||
def test_arbitrary():
|
||||
parse("""
|
||||
odoo.define('bob', function () {
|
||||
flectra.define('bob', function () {
|
||||
var page = window.location.href.replace(/^.*\/\/[^\/]+/, '');
|
||||
var mailWidgets = ['mail_followers', 'mail_thread', 'mail_activity', 'kanban_activity'];
|
||||
var bob;
|
||||
@ -54,7 +54,7 @@ def test_arbitrary():
|
||||
|
||||
def test_prototype():
|
||||
[A, B] = parse("""
|
||||
odoo.define('mod1', function () {
|
||||
flectra.define('mod1', function () {
|
||||
var exports = {};
|
||||
exports.Foo = Backbone.Model.extend({});
|
||||
exports.Bar = Backbone.Model.extend({});
|
||||
@ -64,7 +64,7 @@ def test_prototype():
|
||||
exports.Baz = Backbone.Model.extend({});
|
||||
return exports;
|
||||
});
|
||||
odoo.define('mod2', function (require) {
|
||||
flectra.define('mod2', function (require) {
|
||||
var models = require('mod1');
|
||||
var _super_orderline = models.Bar.prototype;
|
||||
models.Foo = models.Bar.extend({});
|
||||
|
@ -9,7 +9,7 @@ def test_single():
|
||||
/**
|
||||
* This is a super module!
|
||||
*/
|
||||
odoo.define('supermodule', function (req) {
|
||||
flectra.define('supermodule', function (req) {
|
||||
var other = req('other');
|
||||
});
|
||||
""")
|
||||
@ -22,13 +22,13 @@ def test_single():
|
||||
|
||||
def test_multiple():
|
||||
[mod1, mod2, mod3] = parse("""
|
||||
odoo.define('module1', function (req) {
|
||||
flectra.define('module1', function (req) {
|
||||
return 1;
|
||||
});
|
||||
odoo.define('module2', function (req) {
|
||||
flectra.define('module2', function (req) {
|
||||
return req('dep2');
|
||||
});
|
||||
odoo.define('module3', function (req) {
|
||||
flectra.define('module3', function (req) {
|
||||
var r = req('dep3');
|
||||
return r;
|
||||
});
|
||||
@ -54,7 +54,7 @@ def test_multiple():
|
||||
|
||||
def test_func():
|
||||
[mod] = parse("""
|
||||
odoo.define('module', function (d) {
|
||||
flectra.define('module', function (d) {
|
||||
/**
|
||||
* @param {Foo} bar this is a bar
|
||||
* @param {Baz} qux this is a qux
|
||||
@ -78,7 +78,7 @@ def test_func():
|
||||
|
||||
def test_hoist():
|
||||
[mod] = parse("""
|
||||
odoo.define('module', function() {
|
||||
flectra.define('module', function() {
|
||||
return foo;
|
||||
/**
|
||||
* @param a_thing
|
||||
@ -95,7 +95,7 @@ def test_hoist():
|
||||
|
||||
def test_export_instance():
|
||||
[mod] = parse("""
|
||||
odoo.define('module', function (require) {
|
||||
flectra.define('module', function (require) {
|
||||
var Class = require('Class');
|
||||
/**
|
||||
* Provides an instance of Class
|
||||
@ -109,13 +109,13 @@ def test_export_instance():
|
||||
|
||||
def test_bounce():
|
||||
[m2, m1] = parse("""
|
||||
odoo.define('m2', function (require) {
|
||||
flectra.define('m2', function (require) {
|
||||
var Item = require('m1');
|
||||
return {
|
||||
Item: Item
|
||||
};
|
||||
});
|
||||
odoo.define('m1', function (require) {
|
||||
flectra.define('m1', function (require) {
|
||||
var Class = require('Class');
|
||||
var Item = Class.extend({});
|
||||
return Item;
|
||||
@ -129,7 +129,7 @@ def test_bounce():
|
||||
|
||||
def test_reassign():
|
||||
[m] = parse("""
|
||||
odoo.define('m', function (require) {
|
||||
flectra.define('m', function (require) {
|
||||
var Class = require('Class');
|
||||
/** local class */
|
||||
var Class = Class.extend({});
|
||||
@ -142,12 +142,12 @@ def test_reassign():
|
||||
|
||||
def test_attr():
|
||||
[m1, m2] = parse("""
|
||||
odoo.define('m1', function (require) {
|
||||
flectra.define('m1', function (require) {
|
||||
var Class = require('Class');
|
||||
var Item = Class.extend({});
|
||||
return {Item: Item};
|
||||
});
|
||||
odoo.define('m2', function (require) {
|
||||
flectra.define('m2', function (require) {
|
||||
var Item = require('m1').Item;
|
||||
Item.include({});
|
||||
return Item.extend({});
|
||||
@ -159,14 +159,14 @@ def test_attr():
|
||||
|
||||
def test_nothing_implicit():
|
||||
[m] = parse("""
|
||||
odoo.define('m', function () {
|
||||
flectra.define('m', function () {
|
||||
});
|
||||
""")
|
||||
assert m.exports is None
|
||||
|
||||
def test_nothing_explicit():
|
||||
[m] = parse("""
|
||||
odoo.define('m', function () {
|
||||
flectra.define('m', function () {
|
||||
return;
|
||||
});
|
||||
""")
|
||||
|
@ -5,7 +5,7 @@ from support import parse, params
|
||||
|
||||
def test_empty():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
return {};
|
||||
});
|
||||
""")
|
||||
@ -14,7 +14,7 @@ def test_empty():
|
||||
|
||||
def test_inline():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
return {
|
||||
/**
|
||||
* a thing
|
||||
@ -31,7 +31,7 @@ def test_inline():
|
||||
|
||||
def test_header():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
/**
|
||||
* @property {Boolean} a a thing
|
||||
*/
|
||||
@ -45,7 +45,7 @@ def test_header():
|
||||
def test_header_conflict():
|
||||
""" should the header or the inline comment take precedence? """
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
/**
|
||||
* @property {Boolean} a a thing
|
||||
*/
|
||||
@ -61,7 +61,7 @@ def test_header_conflict():
|
||||
|
||||
def test_mixin():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.mixin', function (r) {
|
||||
flectra.define('a.mixin', function (r) {
|
||||
/**
|
||||
* @mixin
|
||||
*/
|
||||
@ -81,7 +81,7 @@ def test_mixin():
|
||||
|
||||
def test_literal():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
/** whop whop */
|
||||
return {
|
||||
'a': 1,
|
||||
@ -97,7 +97,7 @@ def test_literal():
|
||||
|
||||
def test_fill_ns():
|
||||
[mod] = parse("""
|
||||
odoo.define('a.ns', function (r) {
|
||||
flectra.define('a.ns', function (r) {
|
||||
var Class = r('Class');
|
||||
var ns = {};
|
||||
/** ok */
|
||||
@ -120,14 +120,14 @@ def test_fill_ns():
|
||||
|
||||
def test_extend_other():
|
||||
[o, b] = parse("""
|
||||
odoo.define('a.ns', function () {
|
||||
flectra.define('a.ns', function () {
|
||||
/** @name outer */
|
||||
return {
|
||||
/** @name inner */
|
||||
a: {}
|
||||
};
|
||||
});
|
||||
odoo.define('b', function (r) {
|
||||
flectra.define('b', function (r) {
|
||||
var o = r('a.ns');
|
||||
var Class = r('Class');
|
||||
/** Class 1 */
|
||||
@ -151,7 +151,7 @@ def test_extend_other():
|
||||
|
||||
def test_ns_variables():
|
||||
[mod] = parse("""
|
||||
odoo.define('A', function (r) {
|
||||
flectra.define('A', function (r) {
|
||||
var Class = r('Class');
|
||||
var Thing = Class.extend({});
|
||||
return {
|
||||
@ -166,7 +166,7 @@ def test_diff():
|
||||
""" Have the NS key and the underlying object differ
|
||||
"""
|
||||
[mod] = parse("""
|
||||
odoo.define('mod', function (r) {
|
||||
flectra.define('mod', function (r) {
|
||||
var Class = r('Class');
|
||||
var Foo = Class.extend({});
|
||||
return { Class: Foo };
|
||||
|
@ -18,18 +18,18 @@ def setup(app):
|
||||
else:
|
||||
if getattr(app.config, 'html_translator_class', None):
|
||||
app.warn("Overriding the explicitly set html_translator_class setting",
|
||||
location="odoo extension")
|
||||
app.config.html_translator_class = 'odoo_ext.translator.BootstrapTranslator'
|
||||
location="flectra extension")
|
||||
app.config.html_translator_class = 'flectra_ext.translator.BootstrapTranslator'
|
||||
|
||||
switcher.setup(app)
|
||||
app.add_config_value('odoo_cover_default', None, 'env')
|
||||
app.add_config_value('odoo_cover_external', {}, 'env')
|
||||
app.add_config_value('odoo_cover_default_external', lambda conf: conf.odoo_cover_default, 'env')
|
||||
app.add_config_value('flectra_cover_default', None, 'env')
|
||||
app.add_config_value('flectra_cover_external', {}, 'env')
|
||||
app.add_config_value('flectra_cover_default_external', lambda conf: conf.flectra_cover_default, 'env')
|
||||
app.connect('html-page-context', update_meta)
|
||||
|
||||
def update_meta(app, pagename, templatename, context, doctree):
|
||||
meta = context.setdefault('meta', {})
|
||||
meta.setdefault('banner', app.config.odoo_cover_default)
|
||||
meta.setdefault('banner', app.config.flectra_cover_default)
|
||||
|
||||
def navbarify(node, navbar=None):
|
||||
"""
|
@ -54,7 +54,7 @@
|
||||
<span class="mdi-navigation-menu"></span>
|
||||
</a>
|
||||
<div class="o_header_buttons">
|
||||
<a href="http://www.odoo.com/trial" class="btn btn-primary">Start Now</a>
|
||||
<a href="http://www.flectra.com/trial" class="btn btn-primary">Start Now</a>
|
||||
</div>
|
||||
<ul class="o_primary_nav">
|
||||
<li class="dropdown">
|
||||
@ -68,12 +68,12 @@
|
||||
<div>Build great user experience</div>
|
||||
</div>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/website-builder">Website Builder</a></li>
|
||||
<li><a href="https://www.odoo.com/page/e-commerce">eCommerce</a></li>
|
||||
<li><a href="https://www.odoo.com/page/blog-engine">Blogs</a></li>
|
||||
<li><a href="https://www.odoo.com/page/community-builder">Forums</a></li>
|
||||
<li><a href="https://www.odoo.com/page/slides">Slides</a></li>
|
||||
<li><a href="https://adspike.odoo.com">SEA</a></li>
|
||||
<li><a href="https://www.flectra.com/page/website-builder">Website Builder</a></li>
|
||||
<li><a href="https://www.flectra.com/page/e-commerce">eCommerce</a></li>
|
||||
<li><a href="https://www.flectra.com/page/blog-engine">Blogs</a></li>
|
||||
<li><a href="https://www.flectra.com/page/community-builder">Forums</a></li>
|
||||
<li><a href="https://www.flectra.com/page/slides">Slides</a></li>
|
||||
<li><a href="https://adspike.flectra.com">SEA</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-sm-3 o_sale_apps">
|
||||
@ -82,18 +82,18 @@
|
||||
<div>Boost your success rate</div>
|
||||
</div>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/sales">Sales</a></li>
|
||||
<li><a href="https://www.odoo.com/page/crm">CRM</a></li>
|
||||
<li><a href="https://www.odoo.com/page/billing">Invoicing</a></li>
|
||||
<li><a href="https://www.flectra.com/page/sales">Sales</a></li>
|
||||
<li><a href="https://www.flectra.com/page/crm">CRM</a></li>
|
||||
<li><a href="https://www.flectra.com/page/billing">Invoicing</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#0" class="dropdown-toggle">Point of Sale</a>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/point-of-sale">Shops</a></li>
|
||||
<li><a href="https://www.odoo.com/page/pos-restaurant">Restaurants</a></li>
|
||||
<li><a href="https://www.flectra.com/page/point-of-sale">Shops</a></li>
|
||||
<li><a href="https://www.flectra.com/page/pos-restaurant">Restaurants</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="https://www.odoo.com/page/subscriptions">Subscriptions</a></li>
|
||||
<li><a href="https://www.odoo.com/page/sign">Sign</a></li>
|
||||
<li><a href="https://www.flectra.com/page/subscriptions">Subscriptions</a></li>
|
||||
<li><a href="https://www.flectra.com/page/sign">Sign</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-sm-3 o_operation_apps">
|
||||
@ -102,28 +102,28 @@
|
||||
<div>It's all about efficiency</div>
|
||||
</div>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/accounting/">Accounting</a></li>
|
||||
<li><a href="https://www.odoo.com/page/project-management/">Project</a></li>
|
||||
<li><a href="https://www.flectra.com/page/accounting/">Accounting</a></li>
|
||||
<li><a href="https://www.flectra.com/page/project-management/">Project</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#0" class="dropdown-toggle">Human Resources</a>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/recruitment">Recruitment</a></li>
|
||||
<li><a href="https://www.odoo.com/page/employees">Employees</a></li>
|
||||
<li><a href="https://www.odoo.com/page/expenses">Expenses</a></li>
|
||||
<li><a href="https://www.odoo.com/page/appraisal">Appraisal</a></li>
|
||||
<li><a href="https://www.odoo.com/page/fleet">Fleet</a></li>
|
||||
<li><a href="https://www.odoo.com/page/leaves">Leaves</a></li>
|
||||
<li><a href="https://www.flectra.com/page/recruitment">Recruitment</a></li>
|
||||
<li><a href="https://www.flectra.com/page/employees">Employees</a></li>
|
||||
<li><a href="https://www.flectra.com/page/expenses">Expenses</a></li>
|
||||
<li><a href="https://www.flectra.com/page/appraisal">Appraisal</a></li>
|
||||
<li><a href="https://www.flectra.com/page/fleet">Fleet</a></li>
|
||||
<li><a href="https://www.flectra.com/page/leaves">Leaves</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="https://www.odoo.com/page/warehouse">Inventory</a></li>
|
||||
<li><a href="https://www.odoo.com/page/purchase">Purchase</a></li>
|
||||
<li><a href="https://www.flectra.com/page/warehouse">Inventory</a></li>
|
||||
<li><a href="https://www.flectra.com/page/purchase">Purchase</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#0" class="dropdown-toggle">Manufacturing</a>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/manufacturing">MRP</a></li>
|
||||
<li><a href="https://www.odoo.com/page/plm">PLM</a></li>
|
||||
<li><a href="https://www.odoo.com/page/maintenance">Maintenance</a></li>
|
||||
<li><a href="https://www.odoo.com/page/quality">Quality</a></li>
|
||||
<li><a href="https://www.flectra.com/page/manufacturing">MRP</a></li>
|
||||
<li><a href="https://www.flectra.com/page/plm">PLM</a></li>
|
||||
<li><a href="https://www.flectra.com/page/maintenance">Maintenance</a></li>
|
||||
<li><a href="https://www.flectra.com/page/quality">Quality</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -137,28 +137,28 @@
|
||||
<li class="dropdown">
|
||||
<a href="#0" class="dropdown-toggle">Communication</a>
|
||||
<ul>
|
||||
<li><a href="https://www.odoo.com/page/discuss">Discuss</a></li>
|
||||
<li><a href="https://www.odoo.com/page/discuss-groups">Mailing Lists</a></li>
|
||||
<li><a href="https://www.odoo.com/page/notes">Notes</a></li>
|
||||
<li><a href="https://www.flectra.com/page/discuss">Discuss</a></li>
|
||||
<li><a href="https://www.flectra.com/page/discuss-groups">Mailing Lists</a></li>
|
||||
<li><a href="https://www.flectra.com/page/notes">Notes</a></li>
|
||||
<li><a href="#">Help desk</a></li>
|
||||
<li><a href="#">Appointment</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="https://www.odoo.com/page/timesheet">Timesheet</a></li>
|
||||
<li><a href="https://www.odoo.com/page/email-marketing">Email Marketing</a></li>
|
||||
<li><a href="https://www.odoo.com/page/events">Events</a></li>
|
||||
<li><a href="https://www.odoo.com/page/survey">Survey</a></li>
|
||||
<li><a href="https://www.odoo.com/page/live-chat">Live Chat</a></li>
|
||||
<li><a href="https://www.flectra.com/page/timesheet">Timesheet</a></li>
|
||||
<li><a href="https://www.flectra.com/page/email-marketing">Email Marketing</a></li>
|
||||
<li><a href="https://www.flectra.com/page/events">Events</a></li>
|
||||
<li><a href="https://www.flectra.com/page/survey">Survey</a></li>
|
||||
<li><a href="https://www.flectra.com/page/live-chat">Live Chat</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a href="http://www.odoo.com/apps/modules" class="o_store_link"><i class="fa fa-cube fa-fw"></i> Third party apps</a>
|
||||
<a href="http://www.flectra.com/apps/modules" class="o_store_link"><i class="fa fa-cube fa-fw"></i> Third party apps</a>
|
||||
</div>
|
||||
</li>
|
||||
<li><a href="https://www.odoo.com/page/tour">Tour</a></li>
|
||||
<li><a href="https://www.odoo.com/pricing">Pricing</a></li>
|
||||
<li><a href="https://www.odoo.com/page/docs">Docs</a></li>
|
||||
<li><a href="https://www.flectra.com/page/tour">Tour</a></li>
|
||||
<li><a href="https://www.flectra.com/pricing">Pricing</a></li>
|
||||
<li><a href="https://www.flectra.com/page/docs">Docs</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<nav class="navbar o_sub_nav">
|
||||
@ -178,7 +178,7 @@
|
||||
</ol>
|
||||
|
||||
<div class="call-to-action navbar-right hidden-xs">
|
||||
<a href="http://www.odoo.com/trial" class="btn btn-primary">Start Now</a>
|
||||
<a href="http://www.flectra.com/trial" class="btn btn-primary">Start Now</a>
|
||||
</div>
|
||||
|
||||
<ul class="navbar-nav navbar-right nav o_sub_nav_actions">
|
||||
@ -276,42 +276,42 @@
|
||||
<div class="col-xs-6 col-sm-4">
|
||||
<span class="menu_title">Community</span>
|
||||
<ul>
|
||||
<li><a href="https://github.com/odoo/odoo">Github</a></li>
|
||||
<li><a href="http://www.odoo.com/page/download">Download</a></li>
|
||||
<li><a href="https://github.com/flectra/flectra">Github</a></li>
|
||||
<li><a href="http://www.flectra.com/page/download">Download</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="http://runbot.odoo.com/runbot/repo/git-github-com-odoo-enterprise-7">Runbot</a></li>
|
||||
<li><a href="https://github.com/odoo/odoo/wiki/Translations">Translations</a></li>
|
||||
<li><a href="http://runbot.flectra.com/runbot/repo/git-github-com-flectra-enterprise-7">Runbot</a></li>
|
||||
<li><a href="https://github.com/flectra/flectra/wiki/Translations">Translations</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="http://www.odoo.com/page/odoo-community">Mailing Lists</a></li>
|
||||
<li><a href="http://www.odoo.com/forum/help-1">Forum</a></li>
|
||||
<li><a href="http://www.flectra.com/page/flectra-community">Mailing Lists</a></li>
|
||||
<li><a href="http://www.flectra.com/forum/help-1">Forum</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-xs-6 col-sm-4">
|
||||
<span class="menu_title">Services</span>
|
||||
<ul>
|
||||
<li><a href="http://www.odoo.com/pricing">Editions</a></li>
|
||||
<li><a href="http://www.odoo.com/pricing-online">Cloud Pricing</a></li>
|
||||
<li><a href="http://www.odoo.com/page/upgrade">Upgrade</a></li>
|
||||
<li><a href="http://www.flectra.com/pricing">Editions</a></li>
|
||||
<li><a href="http://www.flectra.com/pricing-online">Cloud Pricing</a></li>
|
||||
<li><a href="http://www.flectra.com/page/upgrade">Upgrade</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="http://www.odoo.com/partners">Find a partner</a></li>
|
||||
<li><a href="http://www.odoo.com/page/become-a-partner">Become a partner</a></li>
|
||||
<li><a href="http://www.flectra.com/partners">Find a partner</a></li>
|
||||
<li><a href="http://www.flectra.com/page/become-a-partner">Become a partner</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="http://www.odoo.com/page/education-program">Education</a></li>
|
||||
<li><a href="http://www.flectra.com/page/education-program">Education</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="http://www.odoo.com/page/security">Security</a></li>
|
||||
<li><a href="http://www.flectra.com/page/security">Security</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-sm-4 mb64">
|
||||
<span class="menu_title">About us</span>
|
||||
<ul>
|
||||
<li><a href="http://www.odoo.com/page/about-us">Our company</a></li>
|
||||
<li><a href="http://www.odoo.com/page/contactus">Contact</a></li>
|
||||
<li><a href="http://www.flectra.com/page/about-us">Our company</a></li>
|
||||
<li><a href="http://www.flectra.com/page/contactus">Contact</a></li>
|
||||
<li class="divider" />
|
||||
<li><a href="http://www.odoo.com/event">Events</a></li>
|
||||
<li><a href="http://www.odoo.com/blog/">Blog</a></li>
|
||||
<li><a href="http://www.odoo.com/blog/6">Customers</a></li>
|
||||
<li><a href="http://www.flectra.com/event">Events</a></li>
|
||||
<li><a href="http://www.flectra.com/blog/">Blog</a></li>
|
||||
<li><a href="http://www.flectra.com/blog/6">Customers</a></li>
|
||||
<li class="divider" />
|
||||
<li><a href="http://www.odoo.com/jobs">Jobs</a></li>
|
||||
<li><a href="http://www.flectra.com/jobs">Jobs</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@ -319,9 +319,9 @@
|
||||
<div class="col-sm-5 col-md-4 col-md-offset-1 col-lg-5 col-lg-offset-1">
|
||||
<p>
|
||||
<small>
|
||||
Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.
|
||||
Flectra is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.
|
||||
<br/><br/>
|
||||
Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.
|
||||
Flectra's unique value proposition is to be at the same time very easy to use and fully integrated.
|
||||
</small>
|
||||
</p>
|
||||
</div>
|
||||
@ -329,12 +329,12 @@
|
||||
</div>
|
||||
<div class="o_footer_bottom">
|
||||
<div class="container">
|
||||
<a class="small" href="http://www.odoo.com/page/website-builder">Website made with <span class="o_logo o_logo_inverse o_logo_15"></span></a>
|
||||
<a class="small" href="http://www.flectra.com/page/website-builder">Website made with <span class="o_logo o_logo_inverse o_logo_15"></span></a>
|
||||
<div class="social-links pull-right">
|
||||
<a href="http://www.odoo.com/web/about/facebook"><i class="fa fa-facebook"></i></a>
|
||||
<a href="http://www.odoo.com/web/about/twitter"><i class="fa fa-twitter"></i></a>
|
||||
<a href="http://www.odoo.com/web/about/linkedin"><i class="fa fa-linkedin"></i></a>
|
||||
<a href="mailto:info@odoo.com"><i class="fa fa-envelope"></i></a>
|
||||
<a href="http://www.flectra.com/web/about/facebook"><i class="fa fa-facebook"></i></a>
|
||||
<a href="http://www.flectra.com/web/about/twitter"><i class="fa fa-twitter"></i></a>
|
||||
<a href="http://www.flectra.com/web/about/linkedin"><i class="fa fa-linkedin"></i></a>
|
||||
<a href="mailto:info@flectra.com"><i class="fa fa-envelope"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@ -17,7 +17,7 @@ AQUA = "#5bc4bf"
|
||||
BLUE = "#06b6ef"
|
||||
PURPLE = "#815ba4"
|
||||
|
||||
class OdooStyle(Style):
|
||||
class FlectraStyle(Style):
|
||||
"""Modified version of Paraiso Dark style to avoid Pygments version
|
||||
annoyances.
|
||||
|
||||
@ -120,7 +120,7 @@ class OdooStyle(Style):
|
||||
|
||||
import imp
|
||||
import sys
|
||||
modname = 'pygments.styles.odoo'
|
||||
modname = 'pygments.styles.flectra'
|
||||
m = imp.new_module(modname)
|
||||
m.OdooStyle = OdooStyle
|
||||
m.FlectraStyle = FlectraStyle
|
||||
sys.modules[modname] = m
|
Before Width: | Height: | Size: 322 KiB After Width: | Height: | Size: 322 KiB |
@ -1,4 +1,4 @@
|
||||
// Based on http://www.odoo.com/openerp_website/static/src/less/footer.less
|
||||
// Based on http://www.flectra.com/openerp_website/static/src/less/footer.less
|
||||
// ========================================================================
|
||||
|
||||
body > footer {
|
@ -1,4 +1,4 @@
|
||||
// Based on http://www.odoo.com/openerp_website/static/src/less/header.less
|
||||
// Based on http://www.flectra.com/openerp_website/static/src/less/header.less
|
||||
// ========================================================================
|
||||
|
||||
// ============= MIXINS
|
||||
@ -144,12 +144,12 @@
|
||||
}
|
||||
}
|
||||
&.open > a {
|
||||
color: @odoo-brand-primary!important;
|
||||
color: @flectra-brand-primary!important;
|
||||
font-weight: @fw_semibold;
|
||||
|
||||
&::before, &::after {
|
||||
background-color: @odoo-brand-primary!important;
|
||||
box-shadow: 0 1px 1px fade(@odoo-brand-primary, 10%);
|
||||
background-color: @flectra-brand-primary!important;
|
||||
box-shadow: 0 1px 1px fade(@flectra-brand-primary, 10%);
|
||||
right: @w-header-arrow-length / sqrt(2) / 2;
|
||||
}
|
||||
&::before {
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 8.2 KiB After Width: | Height: | Size: 8.2 KiB |
Before Width: | Height: | Size: 467 KiB After Width: | Height: | Size: 467 KiB |
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 499 B |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |