107 lines
5.1 KiB
XML
107 lines
5.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
|
|
<!-- ================================================================
|
|
TOPIC QUEUE VIEWS
|
|
================================================================ -->
|
|
|
|
<record id="view_blog_topic_tree" model="ir.ui.view">
|
|
<field name="name">itsulu.blog.topic.tree</field>
|
|
<field name="model">itsulu.blog.topic</field>
|
|
<field name="arch" type="xml">
|
|
<list string="Topic Queue" decoration-muted="state=='used'" decoration-warning="priority=='urgent'">
|
|
<field name="sequence" widget="handle"/>
|
|
<field name="priority" widget="priority"/>
|
|
<field name="name"/>
|
|
<field name="blog_id"/>
|
|
<field name="state" widget="badge"
|
|
decoration-success="state=='pending'"
|
|
decoration-info="state=='used'"
|
|
decoration-warning="state=='skipped'"/>
|
|
<field name="used_date" optional="show"/>
|
|
<button name="action_mark_pending" type="object" string="↩ Reset"
|
|
invisible="state == 'pending'"
|
|
class="btn-sm btn-secondary"/>
|
|
<button name="action_mark_skipped" type="object" string="Skip"
|
|
invisible="state != 'pending'"
|
|
class="btn-sm btn-warning"/>
|
|
</list>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_blog_topic_form" model="ir.ui.view">
|
|
<field name="name">itsulu.blog.topic.form</field>
|
|
<field name="model">itsulu.blog.topic</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Blog Topic">
|
|
<header>
|
|
<button name="action_mark_pending" type="object" string="Reset to Pending"
|
|
invisible="state == 'pending'"
|
|
class="btn-secondary"/>
|
|
<button name="action_mark_skipped" type="object" string="Skip"
|
|
invisible="state != 'pending'"
|
|
class="btn-warning"/>
|
|
<field name="state" widget="statusbar" statusbar_visible="pending,used"/>
|
|
</header>
|
|
<sheet>
|
|
<group>
|
|
<group string="Topic">
|
|
<field name="name" placeholder="e.g. How ITSulu Helps SMBs Migrate to the Cloud"/>
|
|
<field name="priority" widget="priority"/>
|
|
<field name="sequence"/>
|
|
<field name="blog_id"/>
|
|
<field name="tone"/>
|
|
</group>
|
|
<group string="Status">
|
|
<field name="state"/>
|
|
<field name="used_date" readonly="1"/>
|
|
<field name="generation_log_id" readonly="1"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Notes / Context for LLM">
|
|
<field name="notes" placeholder="Additional context: specific services to highlight, recent news, preferred angle, key statistics..."/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_blog_topic_list" model="ir.actions.act_window">
|
|
<field name="name">Topic Queue</field>
|
|
<field name="res_model">itsulu.blog.topic</field>
|
|
<field name="view_mode">list,form</field>
|
|
<field name="context">{'search_default_state_pending': 1}</field>
|
|
</record>
|
|
|
|
<record id="view_blog_topic_search" model="ir.ui.view">
|
|
<field name="name">itsulu.blog.topic.search</field>
|
|
<field name="model">itsulu.blog.topic</field>
|
|
<field name="arch" type="xml">
|
|
<search>
|
|
<field name="name"/>
|
|
<filter name="state_pending" string="Pending" domain="[('state','=','pending')]"/>
|
|
<filter name="state_used" string="Used" domain="[('state','=','used')]"/>
|
|
<filter name="priority_urgent" string="Urgent" domain="[('priority','=','urgent')]"/>
|
|
<separator/>
|
|
<filter name="group_state" string="State" context="{'group_by': 'state'}"/>
|
|
<filter name="group_priority" string="Priority" context="{'group_by': 'priority'}"/>
|
|
<filter name="group_blog" string="Blog" context="{'group_by': 'blog_id'}"/>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- ================================================================
|
|
SETTINGS ACTION
|
|
================================================================ -->
|
|
|
|
<record id="action_blog_publisher_settings" model="ir.actions.act_window">
|
|
<field name="name">Blog Publisher Settings</field>
|
|
<field name="res_model">res.config.settings</field>
|
|
<field name="view_mode">form</field>
|
|
<field name="target">inline</field>
|
|
<field name="context">{'module': 'itsulu_blog_publisher'}</field>
|
|
</record>
|
|
|
|
</odoo>
|