summaryrefslogtreecommitdiff
path: root/indoteknik_custom/views/apache_solr_queue.xml
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-08-26 12:13:28 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-08-26 12:13:28 +0700
commit315b832420eb8314e809b1c0f549304d423b45f3 (patch)
treebf31b1f24ffa511308bec829b7e57ff09eabd294 /indoteknik_custom/views/apache_solr_queue.xml
parent52f4b12c0b211f958c2704346d7da24d1d4767c6 (diff)
Create apache solr queue and implement to product.template and website.categories.homepage
Diffstat (limited to 'indoteknik_custom/views/apache_solr_queue.xml')
-rw-r--r--indoteknik_custom/views/apache_solr_queue.xml74
1 files changed, 74 insertions, 0 deletions
diff --git a/indoteknik_custom/views/apache_solr_queue.xml b/indoteknik_custom/views/apache_solr_queue.xml
new file mode 100644
index 00000000..092871d6
--- /dev/null
+++ b/indoteknik_custom/views/apache_solr_queue.xml
@@ -0,0 +1,74 @@
+<odoo>
+ <record id="view_apache_solr_queue" model="ir.ui.view">
+ <field name="name">apache.solr.queue.tree</field>
+ <field name="model">apache.solr.queue</field>
+ <field name="arch" type="xml">
+ <tree editable="top" default_order="execute_date desc">
+ <field name="display_name" readonly="1" />
+ <field name="res_model" required="1" />
+ <field name="res_id" required="1" />
+ <field name="function_name" required="1" />
+ <field name="execute_status" widget="badge" readonly="1"
+ decoration-danger="execute_status == 'failed'"
+ decoration-success="execute_status == 'success'"
+ decoration-primary="execute_status == 'not_found'"
+ />
+ <field name="execute_date" readonly="1" />
+ <field name="create_date" readonly="1" />
+ </tree>
+ </field>
+ </record>
+
+ <record id="apache_solr_queue_view_search" model="ir.ui.view">
+ <field name="name">apache.solr.queue.search</field>
+ <field name="model">apache.solr.queue</field>
+ <field name="mode">primary</field>
+ <field name="arch" type="xml">
+ <search string="Search Queue">
+ <field name="res_model"/>
+ <field name="res_id"/>
+ <field name="function_name"/>
+ <filter string="Active Queue" name="active_queue" domain="[('execute_status', '=', False)]"/>
+ </search>
+ </field>
+ </record>
+
+ <record id="action_apache_solr_queue" model="ir.actions.act_window">
+ <field name="name">Solr Queue</field>
+ <field name="res_model">apache.solr.queue</field>
+ <field name="search_view_id" ref="apache_solr_queue_view_search"/>
+ <field name="context">{'search_default_active_queue': 1}</field>
+ <field name="view_mode">tree</field>
+ </record>
+
+ <menuitem
+ id="menu_apache_solr_queue"
+ name="Solr Queue"
+ parent="base.menu_users"
+ sequence="32"
+ action="action_apache_solr_queue"
+ />
+
+ <record id="ir_actions_server_apache_solr_queue_execute" model="ir.actions.server">
+ <field name="name">Execute</field>
+ <field name="model_id" ref="indoteknik_custom.model_apache_solr_queue"/>
+ <field name="binding_model_id" ref="indoteknik_custom.model_apache_solr_queue"/>
+ <field name="state">code</field>
+ <field name="code">records.execute_queue()</field>
+ </record>
+
+ <data noupdate="1">
+ <record id="cron_apache_solr_queue_process" model="ir.cron">
+ <field name="name">Solr Queue: Process</field>
+ <field name="interval_number">6</field>
+ <field name="interval_type">minutes</field>
+ <field name="numbercall">-1</field>
+ <field name="doall" eval="False"/>
+ <field name="model_id" ref="model_apache_solr_queue"/>
+ <field name="code">model.process_queue_item(limit=100)</field>
+ <field name="state">code</field>
+ <field name="priority">55</field>
+ <field name="active">True</field>
+ </record>
+ </data>
+</odoo> \ No newline at end of file