diff --git a/models/afac_project_category.py b/models/afac_project_category.py
index fb71abc804aa3287d9bd931c3e2cc3a6e4f27a89..4a607d6f62f261cacc7a13ca608f411b45485e50 100644
--- a/models/afac_project_category.py
+++ b/models/afac_project_category.py
@@ -9,7 +9,13 @@ class AfacProjectCategory(models.Model):
     _description = "Sous Projets AFAC"
 
     name = fields.Char("Nom", required=True)
-    project_id = fields.Many2one(comodel_name="afac.project", string="Projet")
+    project_id = fields.Many2one(
+        comodel_name="afac.project",
+        string="Projet",
+        ondelete="cascade",
+        required=True
+    )
+    active = fields.Boolean(related="project_id.active")
     company_id = fields.Many2one(
         comodel_name="res.company",
         string="Société",
diff --git a/models/afac_project_partner.py b/models/afac_project_partner.py
index c186893ee44bca8ef7e25bc6859b7e840ded6b15..98a937c314f4d794c5e6f32b3eefaf6709f2091f 100644
--- a/models/afac_project_partner.py
+++ b/models/afac_project_partner.py
@@ -19,12 +19,15 @@ class AfacProjectPartner(models.Model):
             return []
 
     partner_id = fields.Many2one(
-        comodel_name="res.partner", string="Contact", required=True
+        comodel_name="res.partner", string="Contact", ondelete="cascade", required=True
     )
     project_id = fields.Many2one(
         comodel_name="afac.project",
         string="Projet",
+        ondelete="cascade",
+        requird=True
     )
+    active = fields.Boolean(related="project_id.active")
     project_cat_ids = fields.Many2many(
         comodel_name="afac.project.category",
         relation="afac_partner_project_category_rel",
diff --git a/views/afac_project.xml b/views/afac_project.xml
index d70c0c7cdb90dec0b8f5a000fabf6c0c5d556249..acc9bc791f2f10da266e8c9ecfae4dd342cd3e32 100644
--- a/views/afac_project.xml
+++ b/views/afac_project.xml
@@ -4,6 +4,19 @@
 <odoo>
     <data>
 
+        <!-- Search view -->
+        <record model="ir.ui.view" id="afac_project_search">
+            <field name="name">afac.project.search</field>
+            <field name="model">afac.project</field>
+            <field name="arch" type="xml">
+                <search string="Projets">
+                    <field name="name" string="Nom du projet"/>
+                    <filter name="active" string="Archivés" domain="[('active', '=', False)]"/>
+                    <filter name="active" string="Tous" domain="[('active', 'in', (True, False))]"/>
+                </search>
+            </field>
+        </record>
+
         <!-- Tree view -->
         <record model="ir.ui.view" id="afac_project_tree">
             <field name="name">afac.project.tree</field>
@@ -34,11 +47,25 @@
                                 icon="fa-users"
                             >
                             </button>
+                            <button
+                                name="toggle_active"
+                                string="Restaurer"
+                                type="object"
+                                attrs="{'invisible': [('active', '=', True)]}"
+                                icon="fa-archive"
+                            />
+                            <button
+                                name="toggle_active"
+                                string="Archiver"
+                                type="object"
+                                attrs="{'invisible': [('active', '!=', True)]}"
+                                icon="fa-archive"
+                            />
                         </div>
                         <widget
                             name="web_ribbon"
                             title="Archivé"
-                            bg_color="bg-warning"
+                            bg_color="bg-danger"
                             attrs="{'invisible': [('active', '=', True)]}"
                         />
                         <div class="oe_title">