diff --git a/kernel/IGTabel/btn/ActionButton.php b/kernel/IGTabel/btn/ActionButton.php
new file mode 100644
index 0000000..a11431c
--- /dev/null
+++ b/kernel/IGTabel/btn/ActionButton.php
@@ -0,0 +1,15 @@
+$label";
+    }
+}
\ No newline at end of file
diff --git a/kernel/Widget.php b/kernel/Widget.php
index 3ecbad8..07a1327 100644
--- a/kernel/Widget.php
+++ b/kernel/Widget.php
@@ -11,7 +11,7 @@ class Widget
     public function __construct(array $data = [])
     {
         $this->cgView = new CgView();
-        $this->cgView->viewPath = ROOT_DIR . "/views/widgets";
+        $this->cgView->viewPath = KERNEL_DIR . "/views/widgets";
 
         $this->data = $data;
 
diff --git a/kernel/views/module/index.php b/kernel/views/module/index.php
index 5caf429..f396de1 100644
--- a/kernel/views/module/index.php
+++ b/kernel/views/module/index.php
@@ -7,6 +7,9 @@
  * @var \kernel\services\ModuleService $moduleService
  */
 
+use kernel\IGTabel\btn\ActionButton;
+use kernel\widgets\ActionButtonWidget;
+
 $meta = [];
 $meta['columns'] = [
     "name" => "Название",
@@ -29,22 +32,36 @@ $table = new \Itguild\Tables\ListJsonTable(json_encode($info_to_table, JSON_PRET
 $table->addAction(function ($row, $url) use ($moduleService) {
     $slug = $row['slug'];
     if ($moduleService->isActive($slug)) {
-        $label = "Деактивировать";
-        $btn_type = "warning";
-        $btn = "$label";
+        return ActionButton::create([
+            'btn_type' => "warning",
+            'label' => "",
+            'url' => "$url/deactivate/?slug=$slug",
+        ]);
 
     } else {
-        $label = "";
-        $btn_type = "success";
-        $btn = "$label";
-    }
+        ActionButtonWidget::create([
+            'label' => "",
+            'url' => "$url/deactivate/?slug=$slug",
+            'btn_type' => "success"
+        ])->run();
 
-    return $btn;
+//        return ActionButton::create([
+//            'btn_type' => "success",
+//            'label' => "",
+//            'url' => "$url/deactivate/?slug=$slug",
+//        ]);
+    }
 });
 
 $table->addAction(function ($row, $url) use ($moduleService) {
     $slug = $row['slug'];
-    return "Просмотр";
+//    return "Просмотр";
+
+    return ActionButton::create([
+        'btn_type' => "primary",
+        'label' => "",
+        'url' => "$url/view/?slug=$slug",
+    ]);
 });
 
 $table->addAction(function ($row, $url) use ($moduleService){
@@ -63,16 +80,22 @@ $table->addAction(function ($row, $url) use ($moduleService){
 $table->addAction(function ($row) use ($moduleService){
     $slug = $row['slug'];
     if (!$moduleService->isKernelModule($slug)){
-        $label = "Удалить";
-        $btn_type = "danger";
-        return "$label";
+//        $label = "Удалить";
+//        $btn_type = "danger";
+//        return "$label";
+
+        return ActionButton::create([
+            'btn_type' => "danger",
+            'label' => "",
+            'url' => "admin/module_shop_client/delete/?slug=$slug",
+        ]);
     }
     return false;
 });
 
-$table->create();
-
 if ($moduleService->isActive('module_shop_client')) {
     \kernel\widgets\ModuleTabsWidget::create()->run();
 }
+
+$table->create();
 $table->render();
diff --git a/kernel/views/widgets/action_button.php b/kernel/views/widgets/action_button.php
new file mode 100644
index 0000000..918d5ac
--- /dev/null
+++ b/kernel/views/widgets/action_button.php
@@ -0,0 +1,9 @@
+
+
+= $label ?>
\ No newline at end of file
diff --git a/kernel/views/widgets/admin/action_button.php b/kernel/views/widgets/admin/action_button.php
deleted file mode 100644
index 32dee23..0000000
--- a/kernel/views/widgets/admin/action_button.php
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-"$icon";
\ No newline at end of file
diff --git a/kernel/views/widgets/admin/menu.php b/kernel/views/widgets/menu.php
similarity index 100%
rename from kernel/views/widgets/admin/menu.php
rename to kernel/views/widgets/menu.php
diff --git a/kernel/views/widgets/admin/module_tabs.php b/kernel/views/widgets/module_tabs.php
similarity index 100%
rename from kernel/views/widgets/admin/module_tabs.php
rename to kernel/views/widgets/module_tabs.php
diff --git a/kernel/widgets/ActionButtonWidget.php b/kernel/widgets/ActionButtonWidget.php
index adea90f..f60217f 100644
--- a/kernel/widgets/ActionButtonWidget.php
+++ b/kernel/widgets/ActionButtonWidget.php
@@ -8,9 +8,9 @@ class ActionButtonWidget extends Widget
 {
     public function run(): void
     {
-        $icon = $this->data['icon'];
-        $btn = $this->data['btn'];
+        $label = $this->data['label'];
+        $btn_type = $this->data['btn_type'];
         $url = $this->data['url'];
-        $this->cgView->render('/admin/action_button.php', ['icon' => $icon, 'btn' => $btn, 'url' => $url]);
+        $this->cgView->render('/action_button.php', ['label' => $label, 'btn_type' => $btn_type, 'url' => $url]);
     }
 }
\ No newline at end of file
diff --git a/kernel/widgets/MenuWidget.php b/kernel/widgets/MenuWidget.php
index 52dfe62..d45da7f 100644
--- a/kernel/widgets/MenuWidget.php
+++ b/kernel/widgets/MenuWidget.php
@@ -11,7 +11,7 @@ class MenuWidget extends Widget
     public function run(): void
     {
         $menu = Menu::where("parent_id", 0)->get()->sortBy("priority");
-        $this->cgView->render('/admin/menu.php', ['menu' => $menu]);
+        $this->cgView->render('/menu.php', ['menu' => $menu]);
     }
 
 }
\ No newline at end of file
diff --git a/kernel/widgets/ModuleTabsWidget.php b/kernel/widgets/ModuleTabsWidget.php
index 94686f2..ef41ec2 100644
--- a/kernel/widgets/ModuleTabsWidget.php
+++ b/kernel/widgets/ModuleTabsWidget.php
@@ -13,6 +13,6 @@ class ModuleTabsWidget extends Widget
             '/admin' => 'Локальные',
             '/admin/module_shop_client' => 'Каталог'
         ];
-        $this->cgView->render('/admin/module_tabs.php', ['tabs' => $tabs]);
+        $this->cgView->render('/module_tabs.php', ['tabs' => $tabs]);
     }
 }
\ No newline at end of file