Skip to content

Commit 3e217cd

Browse files
committed
Remove Interactive abstraction
1 parent 73450a8 commit 3e217cd

4 files changed

Lines changed: 86 additions & 86 deletions

File tree

classes/suggested-tasks/class-tasks-manager.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
use Progress_Planner\Suggested_Tasks\Tasks_Interface;
2626
use Progress_Planner\Suggested_Tasks\Providers\Integrations\Yoast\Add_Yoast_Providers;
2727
use Progress_Planner\Suggested_Tasks\Providers\User as User_Tasks;
28-
use Progress_Planner\Suggested_Tasks\Providers\Interactive\Email_Sending;
28+
use Progress_Planner\Suggested_Tasks\Providers\Email_Sending;
2929
use Progress_Planner\Suggested_Tasks\Providers\Set_Valuable_Post_Types;
3030
use Progress_Planner\Suggested_Tasks\Providers\Fewer_Tags;
3131
use Progress_Planner\Suggested_Tasks\Providers\Remove_Terms_Without_Posts;

classes/suggested-tasks/providers/interactive/class-email-sending.php renamed to classes/suggested-tasks/providers/class-email-sending.php

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,12 @@
55
* @package Progress_Planner
66
*/
77

8-
namespace Progress_Planner\Suggested_Tasks\Providers\Interactive;
9-
10-
use Progress_Planner\Suggested_Tasks\Providers\Interactive;
8+
namespace Progress_Planner\Suggested_Tasks\Providers;
119

1210
/**
1311
* Add task for Email sending.
1412
*/
15-
class Email_Sending extends Interactive {
13+
class Email_Sending extends Tasks {
1614

1715
/**
1816
* Whether the task is an onboarding task.
@@ -35,6 +33,13 @@ class Email_Sending extends Interactive {
3533
*/
3634
const CATEGORY = 'configuration';
3735

36+
/**
37+
* Whether the task is interactive.
38+
*
39+
* @var bool
40+
*/
41+
protected $is_interactive = true;
42+
3843
/**
3944
* Whether the task is dismissable.
4045
*
@@ -126,6 +131,37 @@ public function init() {
126131
);
127132
}
128133

134+
/**
135+
* We want task to be added always.
136+
*
137+
* @return bool
138+
*/
139+
public function should_add_task() {
140+
return true;
141+
}
142+
143+
/**
144+
* Task should be completed only manually by the user.
145+
*
146+
* @param string $task_id The task ID.
147+
*
148+
* @return bool
149+
*/
150+
public function is_task_completed( $task_id = '' ) {
151+
return false;
152+
}
153+
154+
/**
155+
* Task should be completed only manually by the user.
156+
*
157+
* @param string $task_id The task ID.
158+
*
159+
* @return bool|string
160+
*/
161+
public function evaluate_task( $task_id ) {
162+
return false;
163+
}
164+
129165
/**
130166
* Get the title.
131167
*

classes/suggested-tasks/providers/class-interactive.php

Lines changed: 0 additions & 81 deletions
This file was deleted.

classes/suggested-tasks/providers/class-tasks.php

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,31 @@ abstract class Tasks implements Tasks_Interface {
119119
*/
120120
protected $data_collector = null;
121121

122+
/**
123+
* The popover ID for interactive tasks.
124+
*
125+
* @var string
126+
*/
127+
protected $popover_id = '';
128+
129+
/**
130+
* Whether the task is interactive.
131+
*
132+
* @var bool
133+
*/
134+
protected $is_interactive = false;
135+
136+
/**
137+
* Constructor.
138+
*
139+
* @return void
140+
*/
141+
public function __construct() {
142+
if ( $this->is_interactive ) {
143+
\add_action( 'progress_planner_admin_page_after_widgets', [ $this, 'add_popover' ] );
144+
}
145+
}
146+
122147
/**
123148
* Initialize the task provider.
124149
*
@@ -548,4 +573,24 @@ protected function transform_collector_data( array $data ): array {
548573

549574
return $data;
550575
}
576+
577+
/**
578+
* Add the popover.
579+
*
580+
* @return void
581+
*/
582+
public function add_popover() {
583+
?>
584+
<div id="prpl-popover-<?php echo \esc_attr( $this->popover_id ); ?>" class="prpl-popover prpl-popover-interactive" popover>
585+
<?php $this->the_popover_content(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
586+
</div>
587+
<?php
588+
}
589+
590+
/**
591+
* The popover content.
592+
*
593+
* @return void
594+
*/
595+
public function the_popover_content() {}
551596
}

0 commit comments

Comments
 (0)