@@ -11,35 +11,35 @@ |
||
11 | 11 | |
12 | 12 | abstract class Abstract_Autocomplete_Service implements Autocomplete_Service { |
13 | 13 | |
14 | - /** |
|
15 | - * Filter out results that are in the excludes list. |
|
16 | - * |
|
17 | - * @param array $results { |
|
18 | - * An array of results. |
|
19 | - * |
|
20 | - * @type array The result's data. |
|
21 | - * } |
|
22 | - * |
|
23 | - * @param array $excludes An array of URLs. |
|
24 | - * |
|
25 | - * @return array The filtered array of results. |
|
26 | - */ |
|
27 | - protected function filter( $results, $excludes ) { |
|
14 | + /** |
|
15 | + * Filter out results that are in the excludes list. |
|
16 | + * |
|
17 | + * @param array $results { |
|
18 | + * An array of results. |
|
19 | + * |
|
20 | + * @type array The result's data. |
|
21 | + * } |
|
22 | + * |
|
23 | + * @param array $excludes An array of URLs. |
|
24 | + * |
|
25 | + * @return array The filtered array of results. |
|
26 | + */ |
|
27 | + protected function filter( $results, $excludes ) { |
|
28 | 28 | |
29 | - $excludes_array = (array) $excludes; |
|
29 | + $excludes_array = (array) $excludes; |
|
30 | 30 | |
31 | - return array_filter( |
|
32 | - $results, |
|
33 | - function ( $item ) use ( $excludes_array ) { |
|
31 | + return array_filter( |
|
32 | + $results, |
|
33 | + function ( $item ) use ( $excludes_array ) { |
|
34 | 34 | |
35 | - return 0 === count( |
|
36 | - array_intersect( |
|
37 | - array_merge( (array) $item['id'], $item['sameAss'] ), |
|
38 | - $excludes_array |
|
39 | - ) |
|
40 | - ); |
|
41 | - } |
|
42 | - ); |
|
43 | - } |
|
35 | + return 0 === count( |
|
36 | + array_intersect( |
|
37 | + array_merge( (array) $item['id'], $item['sameAss'] ), |
|
38 | + $excludes_array |
|
39 | + ) |
|
40 | + ); |
|
41 | + } |
|
42 | + ); |
|
43 | + } |
|
44 | 44 | |
45 | 45 | } |
@@ -24,17 +24,17 @@ |
||
24 | 24 | * |
25 | 25 | * @return array The filtered array of results. |
26 | 26 | */ |
27 | - protected function filter( $results, $excludes ) { |
|
27 | + protected function filter($results, $excludes) { |
|
28 | 28 | |
29 | 29 | $excludes_array = (array) $excludes; |
30 | 30 | |
31 | 31 | return array_filter( |
32 | 32 | $results, |
33 | - function ( $item ) use ( $excludes_array ) { |
|
33 | + function($item) use ($excludes_array) { |
|
34 | 34 | |
35 | 35 | return 0 === count( |
36 | 36 | array_intersect( |
37 | - array_merge( (array) $item['id'], $item['sameAss'] ), |
|
37 | + array_merge((array) $item['id'], $item['sameAss']), |
|
38 | 38 | $excludes_array |
39 | 39 | ) |
40 | 40 | ); |
@@ -15,67 +15,67 @@ |
||
15 | 15 | |
16 | 16 | class Local_Autocomplete_Service extends Abstract_Autocomplete_Service { |
17 | 17 | |
18 | - /** |
|
19 | - * @inheritDoc |
|
20 | - */ |
|
21 | - public function query( $query, $scope, $excludes ) { |
|
22 | - global $wpdb; |
|
18 | + /** |
|
19 | + * @inheritDoc |
|
20 | + */ |
|
21 | + public function query( $query, $scope, $excludes ) { |
|
22 | + global $wpdb; |
|
23 | 23 | |
24 | - $posts = $wpdb->get_results( |
|
25 | - $wpdb->prepare( |
|
26 | - "SELECT * FROM {$wpdb->posts} p" |
|
27 | - . " INNER JOIN {$wpdb->term_relationships} tr" |
|
28 | - . ' ON tr.object_id = p.ID' |
|
29 | - . " INNER JOIN {$wpdb->term_taxonomy} tt" |
|
30 | - . ' ON tt.taxonomy = %s AND tt.term_taxonomy_id = tr.term_taxonomy_id' |
|
31 | - . " INNER JOIN {$wpdb->terms} t" |
|
32 | - . ' ON t.term_id = tt.term_id AND t.name != %s' |
|
33 | - . " LEFT OUTER JOIN {$wpdb->postmeta} pm" |
|
34 | - . ' ON pm.meta_key = %s AND pm.post_id = p.ID' |
|
35 | - . " WHERE p.post_type IN ( '" . implode( "', '", array_map( 'esc_sql', Wordlift_Entity_Service::valid_entity_post_types() ) ) . "' )" // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared,WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration |
|
36 | - . " AND p.post_status IN ( 'publish', 'draft', 'private', 'future' ) " |
|
37 | - . ' AND ( p.post_title LIKE %s OR pm.meta_value LIKE %s )' |
|
38 | - . ' LIMIT %d', |
|
39 | - Wordlift_Entity_Type_Taxonomy_Service::TAXONOMY_NAME, |
|
40 | - 'article', |
|
41 | - Wordlift_Entity_Service::ALTERNATIVE_LABEL_META_KEY, |
|
42 | - // `prepare` doesn't support argument number, hence we must repeat the query. |
|
43 | - '%' . $wpdb->esc_like( $query ) . '%', |
|
44 | - '%' . $wpdb->esc_like( $query ) . '%', |
|
45 | - 50 |
|
46 | - ) |
|
47 | - ); |
|
24 | + $posts = $wpdb->get_results( |
|
25 | + $wpdb->prepare( |
|
26 | + "SELECT * FROM {$wpdb->posts} p" |
|
27 | + . " INNER JOIN {$wpdb->term_relationships} tr" |
|
28 | + . ' ON tr.object_id = p.ID' |
|
29 | + . " INNER JOIN {$wpdb->term_taxonomy} tt" |
|
30 | + . ' ON tt.taxonomy = %s AND tt.term_taxonomy_id = tr.term_taxonomy_id' |
|
31 | + . " INNER JOIN {$wpdb->terms} t" |
|
32 | + . ' ON t.term_id = tt.term_id AND t.name != %s' |
|
33 | + . " LEFT OUTER JOIN {$wpdb->postmeta} pm" |
|
34 | + . ' ON pm.meta_key = %s AND pm.post_id = p.ID' |
|
35 | + . " WHERE p.post_type IN ( '" . implode( "', '", array_map( 'esc_sql', Wordlift_Entity_Service::valid_entity_post_types() ) ) . "' )" // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared,WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration |
|
36 | + . " AND p.post_status IN ( 'publish', 'draft', 'private', 'future' ) " |
|
37 | + . ' AND ( p.post_title LIKE %s OR pm.meta_value LIKE %s )' |
|
38 | + . ' LIMIT %d', |
|
39 | + Wordlift_Entity_Type_Taxonomy_Service::TAXONOMY_NAME, |
|
40 | + 'article', |
|
41 | + Wordlift_Entity_Service::ALTERNATIVE_LABEL_META_KEY, |
|
42 | + // `prepare` doesn't support argument number, hence we must repeat the query. |
|
43 | + '%' . $wpdb->esc_like( $query ) . '%', |
|
44 | + '%' . $wpdb->esc_like( $query ) . '%', |
|
45 | + 50 |
|
46 | + ) |
|
47 | + ); |
|
48 | 48 | |
49 | - $results = array_map( |
|
50 | - function ( $item ) { |
|
49 | + $results = array_map( |
|
50 | + function ( $item ) { |
|
51 | 51 | |
52 | - $entity_service = Wordlift_Entity_Service::get_instance(); |
|
53 | - $uri = $entity_service->get_uri( $item->ID ); |
|
52 | + $entity_service = Wordlift_Entity_Service::get_instance(); |
|
53 | + $uri = $entity_service->get_uri( $item->ID ); |
|
54 | 54 | |
55 | - return array( |
|
56 | - // see #1074: The value property is needed for autocomplete in category page |
|
57 | - // to function correctly, if value is not provided, then the entity |
|
58 | - // wont be correctly saved. |
|
59 | - 'value' => $uri, |
|
60 | - 'id' => $uri, |
|
61 | - 'label' => array( $item->post_title ), |
|
62 | - 'labels' => $entity_service->get_alternative_labels( $item->ID ), |
|
63 | - 'descriptions' => array( Wordlift_Post_Excerpt_Helper::get_text_excerpt( $item ) ), |
|
64 | - 'scope' => 'local', |
|
65 | - 'sameAss' => get_post_meta( $item->ID, \Wordlift_Schema_Service::FIELD_SAME_AS ), |
|
66 | - // The following properties are less relevant because we're linking entities that exist already in the |
|
67 | - // vocabulary. That's why we don't make an effort to load the real data. |
|
68 | - 'types' => array( 'http://schema.org/Thing' ), |
|
69 | - 'urls' => array(), |
|
70 | - 'images' => array(), |
|
71 | - ); |
|
72 | - }, |
|
73 | - $posts |
|
74 | - ); |
|
55 | + return array( |
|
56 | + // see #1074: The value property is needed for autocomplete in category page |
|
57 | + // to function correctly, if value is not provided, then the entity |
|
58 | + // wont be correctly saved. |
|
59 | + 'value' => $uri, |
|
60 | + 'id' => $uri, |
|
61 | + 'label' => array( $item->post_title ), |
|
62 | + 'labels' => $entity_service->get_alternative_labels( $item->ID ), |
|
63 | + 'descriptions' => array( Wordlift_Post_Excerpt_Helper::get_text_excerpt( $item ) ), |
|
64 | + 'scope' => 'local', |
|
65 | + 'sameAss' => get_post_meta( $item->ID, \Wordlift_Schema_Service::FIELD_SAME_AS ), |
|
66 | + // The following properties are less relevant because we're linking entities that exist already in the |
|
67 | + // vocabulary. That's why we don't make an effort to load the real data. |
|
68 | + 'types' => array( 'http://schema.org/Thing' ), |
|
69 | + 'urls' => array(), |
|
70 | + 'images' => array(), |
|
71 | + ); |
|
72 | + }, |
|
73 | + $posts |
|
74 | + ); |
|
75 | 75 | |
76 | - $results = array_unique( $results, SORT_REGULAR ); |
|
76 | + $results = array_unique( $results, SORT_REGULAR ); |
|
77 | 77 | |
78 | - return $this->filter( $results, $excludes ); |
|
79 | - } |
|
78 | + return $this->filter( $results, $excludes ); |
|
79 | + } |
|
80 | 80 | |
81 | 81 | } |
@@ -18,7 +18,7 @@ discard block |
||
18 | 18 | /** |
19 | 19 | * @inheritDoc |
20 | 20 | */ |
21 | - public function query( $query, $scope, $excludes ) { |
|
21 | + public function query($query, $scope, $excludes) { |
|
22 | 22 | global $wpdb; |
23 | 23 | |
24 | 24 | $posts = $wpdb->get_results( |
@@ -32,7 +32,7 @@ discard block |
||
32 | 32 | . ' ON t.term_id = tt.term_id AND t.name != %s' |
33 | 33 | . " LEFT OUTER JOIN {$wpdb->postmeta} pm" |
34 | 34 | . ' ON pm.meta_key = %s AND pm.post_id = p.ID' |
35 | - . " WHERE p.post_type IN ( '" . implode( "', '", array_map( 'esc_sql', Wordlift_Entity_Service::valid_entity_post_types() ) ) . "' )" // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared,WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration |
|
35 | + . " WHERE p.post_type IN ( '".implode("', '", array_map('esc_sql', Wordlift_Entity_Service::valid_entity_post_types()))."' )" // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared,WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration |
|
36 | 36 | . " AND p.post_status IN ( 'publish', 'draft', 'private', 'future' ) " |
37 | 37 | . ' AND ( p.post_title LIKE %s OR pm.meta_value LIKE %s )' |
38 | 38 | . ' LIMIT %d', |
@@ -40,17 +40,17 @@ discard block |
||
40 | 40 | 'article', |
41 | 41 | Wordlift_Entity_Service::ALTERNATIVE_LABEL_META_KEY, |
42 | 42 | // `prepare` doesn't support argument number, hence we must repeat the query. |
43 | - '%' . $wpdb->esc_like( $query ) . '%', |
|
44 | - '%' . $wpdb->esc_like( $query ) . '%', |
|
43 | + '%'.$wpdb->esc_like($query).'%', |
|
44 | + '%'.$wpdb->esc_like($query).'%', |
|
45 | 45 | 50 |
46 | 46 | ) |
47 | 47 | ); |
48 | 48 | |
49 | 49 | $results = array_map( |
50 | - function ( $item ) { |
|
50 | + function($item) { |
|
51 | 51 | |
52 | 52 | $entity_service = Wordlift_Entity_Service::get_instance(); |
53 | - $uri = $entity_service->get_uri( $item->ID ); |
|
53 | + $uri = $entity_service->get_uri($item->ID); |
|
54 | 54 | |
55 | 55 | return array( |
56 | 56 | // see #1074: The value property is needed for autocomplete in category page |
@@ -58,14 +58,14 @@ discard block |
||
58 | 58 | // wont be correctly saved. |
59 | 59 | 'value' => $uri, |
60 | 60 | 'id' => $uri, |
61 | - 'label' => array( $item->post_title ), |
|
62 | - 'labels' => $entity_service->get_alternative_labels( $item->ID ), |
|
63 | - 'descriptions' => array( Wordlift_Post_Excerpt_Helper::get_text_excerpt( $item ) ), |
|
61 | + 'label' => array($item->post_title), |
|
62 | + 'labels' => $entity_service->get_alternative_labels($item->ID), |
|
63 | + 'descriptions' => array(Wordlift_Post_Excerpt_Helper::get_text_excerpt($item)), |
|
64 | 64 | 'scope' => 'local', |
65 | - 'sameAss' => get_post_meta( $item->ID, \Wordlift_Schema_Service::FIELD_SAME_AS ), |
|
65 | + 'sameAss' => get_post_meta($item->ID, \Wordlift_Schema_Service::FIELD_SAME_AS), |
|
66 | 66 | // The following properties are less relevant because we're linking entities that exist already in the |
67 | 67 | // vocabulary. That's why we don't make an effort to load the real data. |
68 | - 'types' => array( 'http://schema.org/Thing' ), |
|
68 | + 'types' => array('http://schema.org/Thing'), |
|
69 | 69 | 'urls' => array(), |
70 | 70 | 'images' => array(), |
71 | 71 | ); |
@@ -73,9 +73,9 @@ discard block |
||
73 | 73 | $posts |
74 | 74 | ); |
75 | 75 | |
76 | - $results = array_unique( $results, SORT_REGULAR ); |
|
76 | + $results = array_unique($results, SORT_REGULAR); |
|
77 | 77 | |
78 | - return $this->filter( $results, $excludes ); |
|
78 | + return $this->filter($results, $excludes); |
|
79 | 79 | } |
80 | 80 | |
81 | 81 | } |
@@ -21,18 +21,18 @@ |
||
21 | 21 | */ |
22 | 22 | class Term_Save { |
23 | 23 | |
24 | - public function init() { |
|
25 | - add_action( 'create_term', array( $this, 'saved_term' ) ); |
|
26 | - add_action( 'edited_term', array( $this, 'saved_term' ) ); |
|
27 | - } |
|
24 | + public function init() { |
|
25 | + add_action( 'create_term', array( $this, 'saved_term' ) ); |
|
26 | + add_action( 'edited_term', array( $this, 'saved_term' ) ); |
|
27 | + } |
|
28 | 28 | |
29 | - public function saved_term( $term_id ) { |
|
29 | + public function saved_term( $term_id ) { |
|
30 | 30 | |
31 | - // check if entity url already exists. |
|
31 | + // check if entity url already exists. |
|
32 | 32 | |
33 | - Wordpress_Term_Content_Legacy_Service::get_instance() |
|
34 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term_id ) ); |
|
33 | + Wordpress_Term_Content_Legacy_Service::get_instance() |
|
34 | + ->get_entity_id( Wordpress_Content_Id::create_term( $term_id ) ); |
|
35 | 35 | |
36 | - } |
|
36 | + } |
|
37 | 37 | |
38 | 38 | } |
@@ -22,16 +22,16 @@ |
||
22 | 22 | class Term_Save { |
23 | 23 | |
24 | 24 | public function init() { |
25 | - add_action( 'create_term', array( $this, 'saved_term' ) ); |
|
26 | - add_action( 'edited_term', array( $this, 'saved_term' ) ); |
|
25 | + add_action('create_term', array($this, 'saved_term')); |
|
26 | + add_action('edited_term', array($this, 'saved_term')); |
|
27 | 27 | } |
28 | 28 | |
29 | - public function saved_term( $term_id ) { |
|
29 | + public function saved_term($term_id) { |
|
30 | 30 | |
31 | 31 | // check if entity url already exists. |
32 | 32 | |
33 | 33 | Wordpress_Term_Content_Legacy_Service::get_instance() |
34 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term_id ) ); |
|
34 | + ->get_entity_id(Wordpress_Content_Id::create_term($term_id)); |
|
35 | 35 | |
36 | 36 | } |
37 | 37 |
@@ -12,44 +12,44 @@ |
||
12 | 12 | use Wordlift\Vocabulary_Terms\Jsonld\Post_Jsonld; |
13 | 13 | |
14 | 14 | class Vocabulary_Terms_Loader extends Default_Loader { |
15 | - /** |
|
16 | - * @var \Wordlift_Entity_Type_Service |
|
17 | - */ |
|
18 | - private $entity_type_service; |
|
19 | - /** |
|
20 | - * @var \Wordlift_Property_Getter |
|
21 | - */ |
|
22 | - private $property_getter; |
|
23 | - |
|
24 | - /** |
|
25 | - * Vocabulary_Terms_Loader constructor. |
|
26 | - * |
|
27 | - * @param $entity_type_service \Wordlift_Entity_Type_Service |
|
28 | - * @param \Wordlift_Property_Getter $property_getter |
|
29 | - */ |
|
30 | - public function __construct( $entity_type_service, $property_getter ) { |
|
31 | - parent::__construct(); |
|
32 | - $this->entity_type_service = $entity_type_service; |
|
33 | - $this->property_getter = $property_getter; |
|
34 | - } |
|
35 | - |
|
36 | - public function init_all_dependencies() { |
|
37 | - new Entity_Type(); |
|
38 | - new Term_Metabox(); |
|
39 | - $jsonld = new Jsonld_Generator( $this->entity_type_service, $this->property_getter ); |
|
40 | - $jsonld->init(); |
|
41 | - $term_save_hook = new Term_Save(); |
|
42 | - $term_save_hook->init(); |
|
43 | - $post_jsonld = new Post_Jsonld(); |
|
44 | - $post_jsonld->init(); |
|
45 | - } |
|
46 | - |
|
47 | - protected function get_feature_slug() { |
|
48 | - return 'no-vocabulary-terms'; |
|
49 | - } |
|
50 | - |
|
51 | - protected function get_feature_default_value() { |
|
52 | - return false; |
|
53 | - } |
|
15 | + /** |
|
16 | + * @var \Wordlift_Entity_Type_Service |
|
17 | + */ |
|
18 | + private $entity_type_service; |
|
19 | + /** |
|
20 | + * @var \Wordlift_Property_Getter |
|
21 | + */ |
|
22 | + private $property_getter; |
|
23 | + |
|
24 | + /** |
|
25 | + * Vocabulary_Terms_Loader constructor. |
|
26 | + * |
|
27 | + * @param $entity_type_service \Wordlift_Entity_Type_Service |
|
28 | + * @param \Wordlift_Property_Getter $property_getter |
|
29 | + */ |
|
30 | + public function __construct( $entity_type_service, $property_getter ) { |
|
31 | + parent::__construct(); |
|
32 | + $this->entity_type_service = $entity_type_service; |
|
33 | + $this->property_getter = $property_getter; |
|
34 | + } |
|
35 | + |
|
36 | + public function init_all_dependencies() { |
|
37 | + new Entity_Type(); |
|
38 | + new Term_Metabox(); |
|
39 | + $jsonld = new Jsonld_Generator( $this->entity_type_service, $this->property_getter ); |
|
40 | + $jsonld->init(); |
|
41 | + $term_save_hook = new Term_Save(); |
|
42 | + $term_save_hook->init(); |
|
43 | + $post_jsonld = new Post_Jsonld(); |
|
44 | + $post_jsonld->init(); |
|
45 | + } |
|
46 | + |
|
47 | + protected function get_feature_slug() { |
|
48 | + return 'no-vocabulary-terms'; |
|
49 | + } |
|
50 | + |
|
51 | + protected function get_feature_default_value() { |
|
52 | + return false; |
|
53 | + } |
|
54 | 54 | |
55 | 55 | } |
@@ -27,7 +27,7 @@ discard block |
||
27 | 27 | * @param $entity_type_service \Wordlift_Entity_Type_Service |
28 | 28 | * @param \Wordlift_Property_Getter $property_getter |
29 | 29 | */ |
30 | - public function __construct( $entity_type_service, $property_getter ) { |
|
30 | + public function __construct($entity_type_service, $property_getter) { |
|
31 | 31 | parent::__construct(); |
32 | 32 | $this->entity_type_service = $entity_type_service; |
33 | 33 | $this->property_getter = $property_getter; |
@@ -36,7 +36,7 @@ discard block |
||
36 | 36 | public function init_all_dependencies() { |
37 | 37 | new Entity_Type(); |
38 | 38 | new Term_Metabox(); |
39 | - $jsonld = new Jsonld_Generator( $this->entity_type_service, $this->property_getter ); |
|
39 | + $jsonld = new Jsonld_Generator($this->entity_type_service, $this->property_getter); |
|
40 | 40 | $jsonld->init(); |
41 | 41 | $term_save_hook = new Term_Save(); |
42 | 42 | $term_save_hook->init(); |
@@ -16,94 +16,94 @@ |
||
16 | 16 | |
17 | 17 | class Post_Jsonld { |
18 | 18 | |
19 | - public function init() { |
|
20 | - add_filter( 'wl_post_jsonld_array', array( $this, 'wl_post_jsonld_array' ), 10, 2 ); |
|
21 | - } |
|
22 | - |
|
23 | - public function wl_post_jsonld_array( $data, $post_id ) { |
|
24 | - |
|
25 | - $term_references = $this->get_term_references( $post_id ); |
|
26 | - |
|
27 | - if ( ! $term_references ) { |
|
28 | - return $data; |
|
29 | - } |
|
30 | - |
|
31 | - $references = $data['references']; |
|
32 | - $jsonld = $data['jsonld']; |
|
33 | - |
|
34 | - $jsonld['mentions'] = $this->append_term_mentions( $jsonld, $term_references ); |
|
35 | - |
|
36 | - return array( |
|
37 | - 'jsonld' => $jsonld, |
|
38 | - 'references' => array_merge( $references, $term_references ), |
|
39 | - ); |
|
40 | - } |
|
41 | - |
|
42 | - /** |
|
43 | - * @param $post_id |
|
44 | - * |
|
45 | - * @return array Returns a list of term references, Returns empty array if none found. |
|
46 | - */ |
|
47 | - private function get_term_references( $post_id ) { |
|
48 | - |
|
49 | - /** @var WP_Taxonomy[] $taxonomies_for_post */ |
|
50 | - $taxonomies_for_post = get_object_taxonomies( get_post_type( $post_id ), 'objects' ); |
|
51 | - |
|
52 | - // now we need to collect all terms attached to this post. |
|
53 | - $terms = array(); |
|
54 | - |
|
55 | - foreach ( $taxonomies_for_post as $taxonomy ) { |
|
56 | - // Please note that `$taxonomy->publicly_queryable is only WP 4.7+ |
|
57 | - if ( 'wl_entity_type' === $taxonomy->name || ! $taxonomy->public ) { |
|
58 | - continue; |
|
59 | - } |
|
60 | - |
|
61 | - $taxonomy_terms = get_the_terms( $post_id, $taxonomy->name ); |
|
62 | - if ( is_array( $taxonomy_terms ) ) { |
|
63 | - $terms = array_merge( $terms, $taxonomy_terms ); |
|
64 | - } |
|
65 | - } |
|
66 | - |
|
67 | - // Convert everything to the Term Reference. |
|
68 | - return array_filter( |
|
69 | - array_map( |
|
70 | - function ( $term ) { |
|
71 | - /** |
|
72 | - * @var WP_Term $term |
|
73 | - */ |
|
74 | - if ( Wordpress_Term_Content_Legacy_Service::get_instance() |
|
75 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term->term_id ) ) |
|
76 | - ) { |
|
77 | - return new Term_Reference( $term->term_id ); |
|
78 | - } |
|
79 | - |
|
80 | - return false; |
|
81 | - }, |
|
82 | - $terms |
|
83 | - ) |
|
84 | - ); |
|
85 | - |
|
86 | - } |
|
87 | - |
|
88 | - /** |
|
89 | - * @param $jsonld array |
|
90 | - * @param $term_references array<Term_Reference> |
|
91 | - */ |
|
92 | - private function append_term_mentions( $jsonld, $term_references ) { |
|
93 | - |
|
94 | - $existing_mentions = array_key_exists( 'mentions', $jsonld ) ? $jsonld['mentions'] : array(); |
|
95 | - |
|
96 | - $term_mentions = array_map( |
|
97 | - function ( $term_reference ) { |
|
98 | - return array( |
|
99 | - '@id' => Wordpress_Term_Content_Legacy_Service::get_instance() |
|
100 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term_reference->get_id() ) ), |
|
101 | - ); |
|
102 | - }, |
|
103 | - $term_references |
|
104 | - ); |
|
105 | - |
|
106 | - return array_merge( $existing_mentions, $term_mentions ); |
|
107 | - } |
|
19 | + public function init() { |
|
20 | + add_filter( 'wl_post_jsonld_array', array( $this, 'wl_post_jsonld_array' ), 10, 2 ); |
|
21 | + } |
|
22 | + |
|
23 | + public function wl_post_jsonld_array( $data, $post_id ) { |
|
24 | + |
|
25 | + $term_references = $this->get_term_references( $post_id ); |
|
26 | + |
|
27 | + if ( ! $term_references ) { |
|
28 | + return $data; |
|
29 | + } |
|
30 | + |
|
31 | + $references = $data['references']; |
|
32 | + $jsonld = $data['jsonld']; |
|
33 | + |
|
34 | + $jsonld['mentions'] = $this->append_term_mentions( $jsonld, $term_references ); |
|
35 | + |
|
36 | + return array( |
|
37 | + 'jsonld' => $jsonld, |
|
38 | + 'references' => array_merge( $references, $term_references ), |
|
39 | + ); |
|
40 | + } |
|
41 | + |
|
42 | + /** |
|
43 | + * @param $post_id |
|
44 | + * |
|
45 | + * @return array Returns a list of term references, Returns empty array if none found. |
|
46 | + */ |
|
47 | + private function get_term_references( $post_id ) { |
|
48 | + |
|
49 | + /** @var WP_Taxonomy[] $taxonomies_for_post */ |
|
50 | + $taxonomies_for_post = get_object_taxonomies( get_post_type( $post_id ), 'objects' ); |
|
51 | + |
|
52 | + // now we need to collect all terms attached to this post. |
|
53 | + $terms = array(); |
|
54 | + |
|
55 | + foreach ( $taxonomies_for_post as $taxonomy ) { |
|
56 | + // Please note that `$taxonomy->publicly_queryable is only WP 4.7+ |
|
57 | + if ( 'wl_entity_type' === $taxonomy->name || ! $taxonomy->public ) { |
|
58 | + continue; |
|
59 | + } |
|
60 | + |
|
61 | + $taxonomy_terms = get_the_terms( $post_id, $taxonomy->name ); |
|
62 | + if ( is_array( $taxonomy_terms ) ) { |
|
63 | + $terms = array_merge( $terms, $taxonomy_terms ); |
|
64 | + } |
|
65 | + } |
|
66 | + |
|
67 | + // Convert everything to the Term Reference. |
|
68 | + return array_filter( |
|
69 | + array_map( |
|
70 | + function ( $term ) { |
|
71 | + /** |
|
72 | + * @var WP_Term $term |
|
73 | + */ |
|
74 | + if ( Wordpress_Term_Content_Legacy_Service::get_instance() |
|
75 | + ->get_entity_id( Wordpress_Content_Id::create_term( $term->term_id ) ) |
|
76 | + ) { |
|
77 | + return new Term_Reference( $term->term_id ); |
|
78 | + } |
|
79 | + |
|
80 | + return false; |
|
81 | + }, |
|
82 | + $terms |
|
83 | + ) |
|
84 | + ); |
|
85 | + |
|
86 | + } |
|
87 | + |
|
88 | + /** |
|
89 | + * @param $jsonld array |
|
90 | + * @param $term_references array<Term_Reference> |
|
91 | + */ |
|
92 | + private function append_term_mentions( $jsonld, $term_references ) { |
|
93 | + |
|
94 | + $existing_mentions = array_key_exists( 'mentions', $jsonld ) ? $jsonld['mentions'] : array(); |
|
95 | + |
|
96 | + $term_mentions = array_map( |
|
97 | + function ( $term_reference ) { |
|
98 | + return array( |
|
99 | + '@id' => Wordpress_Term_Content_Legacy_Service::get_instance() |
|
100 | + ->get_entity_id( Wordpress_Content_Id::create_term( $term_reference->get_id() ) ), |
|
101 | + ); |
|
102 | + }, |
|
103 | + $term_references |
|
104 | + ); |
|
105 | + |
|
106 | + return array_merge( $existing_mentions, $term_mentions ); |
|
107 | + } |
|
108 | 108 | |
109 | 109 | } |
@@ -17,25 +17,25 @@ discard block |
||
17 | 17 | class Post_Jsonld { |
18 | 18 | |
19 | 19 | public function init() { |
20 | - add_filter( 'wl_post_jsonld_array', array( $this, 'wl_post_jsonld_array' ), 10, 2 ); |
|
20 | + add_filter('wl_post_jsonld_array', array($this, 'wl_post_jsonld_array'), 10, 2); |
|
21 | 21 | } |
22 | 22 | |
23 | - public function wl_post_jsonld_array( $data, $post_id ) { |
|
23 | + public function wl_post_jsonld_array($data, $post_id) { |
|
24 | 24 | |
25 | - $term_references = $this->get_term_references( $post_id ); |
|
25 | + $term_references = $this->get_term_references($post_id); |
|
26 | 26 | |
27 | - if ( ! $term_references ) { |
|
27 | + if ( ! $term_references) { |
|
28 | 28 | return $data; |
29 | 29 | } |
30 | 30 | |
31 | 31 | $references = $data['references']; |
32 | 32 | $jsonld = $data['jsonld']; |
33 | 33 | |
34 | - $jsonld['mentions'] = $this->append_term_mentions( $jsonld, $term_references ); |
|
34 | + $jsonld['mentions'] = $this->append_term_mentions($jsonld, $term_references); |
|
35 | 35 | |
36 | 36 | return array( |
37 | 37 | 'jsonld' => $jsonld, |
38 | - 'references' => array_merge( $references, $term_references ), |
|
38 | + 'references' => array_merge($references, $term_references), |
|
39 | 39 | ); |
40 | 40 | } |
41 | 41 | |
@@ -44,37 +44,37 @@ discard block |
||
44 | 44 | * |
45 | 45 | * @return array Returns a list of term references, Returns empty array if none found. |
46 | 46 | */ |
47 | - private function get_term_references( $post_id ) { |
|
47 | + private function get_term_references($post_id) { |
|
48 | 48 | |
49 | 49 | /** @var WP_Taxonomy[] $taxonomies_for_post */ |
50 | - $taxonomies_for_post = get_object_taxonomies( get_post_type( $post_id ), 'objects' ); |
|
50 | + $taxonomies_for_post = get_object_taxonomies(get_post_type($post_id), 'objects'); |
|
51 | 51 | |
52 | 52 | // now we need to collect all terms attached to this post. |
53 | 53 | $terms = array(); |
54 | 54 | |
55 | - foreach ( $taxonomies_for_post as $taxonomy ) { |
|
55 | + foreach ($taxonomies_for_post as $taxonomy) { |
|
56 | 56 | // Please note that `$taxonomy->publicly_queryable is only WP 4.7+ |
57 | - if ( 'wl_entity_type' === $taxonomy->name || ! $taxonomy->public ) { |
|
57 | + if ('wl_entity_type' === $taxonomy->name || ! $taxonomy->public) { |
|
58 | 58 | continue; |
59 | 59 | } |
60 | 60 | |
61 | - $taxonomy_terms = get_the_terms( $post_id, $taxonomy->name ); |
|
62 | - if ( is_array( $taxonomy_terms ) ) { |
|
63 | - $terms = array_merge( $terms, $taxonomy_terms ); |
|
61 | + $taxonomy_terms = get_the_terms($post_id, $taxonomy->name); |
|
62 | + if (is_array($taxonomy_terms)) { |
|
63 | + $terms = array_merge($terms, $taxonomy_terms); |
|
64 | 64 | } |
65 | 65 | } |
66 | 66 | |
67 | 67 | // Convert everything to the Term Reference. |
68 | 68 | return array_filter( |
69 | 69 | array_map( |
70 | - function ( $term ) { |
|
70 | + function($term) { |
|
71 | 71 | /** |
72 | 72 | * @var WP_Term $term |
73 | 73 | */ |
74 | - if ( Wordpress_Term_Content_Legacy_Service::get_instance() |
|
75 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term->term_id ) ) |
|
74 | + if (Wordpress_Term_Content_Legacy_Service::get_instance() |
|
75 | + ->get_entity_id(Wordpress_Content_Id::create_term($term->term_id)) |
|
76 | 76 | ) { |
77 | - return new Term_Reference( $term->term_id ); |
|
77 | + return new Term_Reference($term->term_id); |
|
78 | 78 | } |
79 | 79 | |
80 | 80 | return false; |
@@ -89,21 +89,21 @@ discard block |
||
89 | 89 | * @param $jsonld array |
90 | 90 | * @param $term_references array<Term_Reference> |
91 | 91 | */ |
92 | - private function append_term_mentions( $jsonld, $term_references ) { |
|
92 | + private function append_term_mentions($jsonld, $term_references) { |
|
93 | 93 | |
94 | - $existing_mentions = array_key_exists( 'mentions', $jsonld ) ? $jsonld['mentions'] : array(); |
|
94 | + $existing_mentions = array_key_exists('mentions', $jsonld) ? $jsonld['mentions'] : array(); |
|
95 | 95 | |
96 | 96 | $term_mentions = array_map( |
97 | - function ( $term_reference ) { |
|
97 | + function($term_reference) { |
|
98 | 98 | return array( |
99 | 99 | '@id' => Wordpress_Term_Content_Legacy_Service::get_instance() |
100 | - ->get_entity_id( Wordpress_Content_Id::create_term( $term_reference->get_id() ) ), |
|
100 | + ->get_entity_id(Wordpress_Content_Id::create_term($term_reference->get_id())), |
|
101 | 101 | ); |
102 | 102 | }, |
103 | 103 | $term_references |
104 | 104 | ); |
105 | 105 | |
106 | - return array_merge( $existing_mentions, $term_mentions ); |
|
106 | + return array_merge($existing_mentions, $term_mentions); |
|
107 | 107 | } |
108 | 108 | |
109 | 109 | } |
@@ -4,20 +4,20 @@ |
||
4 | 4 | |
5 | 5 | interface Task { |
6 | 6 | |
7 | - /** |
|
8 | - * @return int The total number of items to process. |
|
9 | - */ |
|
10 | - public function starting(); |
|
7 | + /** |
|
8 | + * @return int The total number of items to process. |
|
9 | + */ |
|
10 | + public function starting(); |
|
11 | 11 | |
12 | - /** |
|
13 | - * @param $value mixed The incoming value. |
|
14 | - * @param $args { |
|
15 | - * |
|
16 | - * @type int $offset The index of the current item. |
|
17 | - * @type int $count The total number of items as provided by the `starting` function. |
|
18 | - * @type int $batch_size The number of items to process within this call. |
|
19 | - * } |
|
20 | - */ |
|
21 | - public function tick( $value, $args ); |
|
12 | + /** |
|
13 | + * @param $value mixed The incoming value. |
|
14 | + * @param $args { |
|
15 | + * |
|
16 | + * @type int $offset The index of the current item. |
|
17 | + * @type int $count The total number of items as provided by the `starting` function. |
|
18 | + * @type int $batch_size The number of items to process within this call. |
|
19 | + * } |
|
20 | + */ |
|
21 | + public function tick( $value, $args ); |
|
22 | 22 | |
23 | 23 | } |
@@ -18,6 +18,6 @@ |
||
18 | 18 | * @type int $batch_size The number of items to process within this call. |
19 | 19 | * } |
20 | 20 | */ |
21 | - public function tick( $value, $args ); |
|
21 | + public function tick($value, $args); |
|
22 | 22 | |
23 | 23 | } |
@@ -4,31 +4,31 @@ |
||
4 | 4 | |
5 | 5 | class Background_Task_Stopped_State extends Abstract_Background_Task_State { |
6 | 6 | |
7 | - /** |
|
8 | - * @var Background_Task |
|
9 | - */ |
|
10 | - private $context; |
|
7 | + /** |
|
8 | + * @var Background_Task |
|
9 | + */ |
|
10 | + private $context; |
|
11 | 11 | |
12 | - public function __construct( $context ) { |
|
13 | - parent::__construct( $context, Background_Task::STATE_STOPPED ); |
|
12 | + public function __construct( $context ) { |
|
13 | + parent::__construct( $context, Background_Task::STATE_STOPPED ); |
|
14 | 14 | |
15 | - $this->context = $context; |
|
16 | - } |
|
15 | + $this->context = $context; |
|
16 | + } |
|
17 | 17 | |
18 | - public function enter() { |
|
19 | - $this->context->set_state( Background_Task::STATE_STOPPED ); |
|
20 | - } |
|
18 | + public function enter() { |
|
19 | + $this->context->set_state( Background_Task::STATE_STOPPED ); |
|
20 | + } |
|
21 | 21 | |
22 | - public function leave() { |
|
23 | - $this->context->set_state( null ); |
|
24 | - } |
|
22 | + public function leave() { |
|
23 | + $this->context->set_state( null ); |
|
24 | + } |
|
25 | 25 | |
26 | - // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable |
|
27 | - public function task( $value ) { |
|
26 | + // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable |
|
27 | + public function task( $value ) { |
|
28 | 28 | |
29 | - $this->context->cancel_process(); |
|
29 | + $this->context->cancel_process(); |
|
30 | 30 | |
31 | - return false; |
|
32 | - } |
|
31 | + return false; |
|
32 | + } |
|
33 | 33 | |
34 | 34 | } |
@@ -9,22 +9,22 @@ |
||
9 | 9 | */ |
10 | 10 | private $context; |
11 | 11 | |
12 | - public function __construct( $context ) { |
|
13 | - parent::__construct( $context, Background_Task::STATE_STOPPED ); |
|
12 | + public function __construct($context) { |
|
13 | + parent::__construct($context, Background_Task::STATE_STOPPED); |
|
14 | 14 | |
15 | 15 | $this->context = $context; |
16 | 16 | } |
17 | 17 | |
18 | 18 | public function enter() { |
19 | - $this->context->set_state( Background_Task::STATE_STOPPED ); |
|
19 | + $this->context->set_state(Background_Task::STATE_STOPPED); |
|
20 | 20 | } |
21 | 21 | |
22 | 22 | public function leave() { |
23 | - $this->context->set_state( null ); |
|
23 | + $this->context->set_state(null); |
|
24 | 24 | } |
25 | 25 | |
26 | 26 | // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable |
27 | - public function task( $value ) { |
|
27 | + public function task($value) { |
|
28 | 28 | |
29 | 29 | $this->context->cancel_process(); |
30 | 30 |
@@ -8,73 +8,73 @@ discard block |
||
8 | 8 | |
9 | 9 | class Background_Task_Page { |
10 | 10 | |
11 | - private $title; |
|
12 | - |
|
13 | - private $menu_slug; |
|
14 | - |
|
15 | - /** |
|
16 | - * @var Background_Task_Route $background_task_route |
|
17 | - */ |
|
18 | - private $background_task_route; |
|
19 | - |
|
20 | - /** |
|
21 | - * @throws Exception if one or more parameters are invalid. |
|
22 | - */ |
|
23 | - public function __construct( $title, $menu_slug, $background_task_route ) { |
|
24 | - Assertions::not_empty( $title, '`$title` cannot be empty.' ); |
|
25 | - Assertions::not_empty( $menu_slug, '`$menu_slug` cannot be empty.' ); |
|
26 | - Assertions::is_a( $background_task_route, 'Wordlift\Task\Background\Background_Task_Route', '`Background_Task_Route` must be of type `Wordlift\Task\Background\Background_Route`.' ); |
|
27 | - |
|
28 | - add_action( 'admin_menu', array( $this, 'admin_menu' ) ); |
|
29 | - |
|
30 | - $this->title = $title; |
|
31 | - $this->menu_slug = $menu_slug; |
|
32 | - $this->background_task_route = $background_task_route; |
|
33 | - } |
|
34 | - |
|
35 | - /** |
|
36 | - * @throws Exception if one or more parameters are invalid. |
|
37 | - */ |
|
38 | - public static function create( $title, $menu_slug, $background_route ) { |
|
39 | - return new self( $title, $menu_slug, $background_route ); |
|
40 | - } |
|
41 | - |
|
42 | - public function admin_menu() { |
|
43 | - |
|
44 | - add_submenu_page( |
|
45 | - 'wl_admin_menu', |
|
46 | - $this->title, |
|
47 | - $this->title, |
|
48 | - 'manage_options', |
|
49 | - $this->menu_slug, |
|
50 | - array( |
|
51 | - $this, |
|
52 | - 'render', |
|
53 | - ) |
|
54 | - ); |
|
55 | - |
|
56 | - } |
|
57 | - |
|
58 | - public function render() { |
|
59 | - |
|
60 | - wp_enqueue_style( |
|
61 | - 'wl-task-page', |
|
62 | - plugin_dir_url( __FILE__ ) . 'assets/task-page.css', |
|
63 | - array(), |
|
64 | - Wordlift::get_instance()->get_version(), |
|
65 | - 'all' |
|
66 | - ); |
|
67 | - |
|
68 | - wp_enqueue_script( |
|
69 | - 'wl-task-page', |
|
70 | - plugin_dir_url( __FILE__ ) . 'assets/task-page.js', |
|
71 | - array( 'wp-api' ), |
|
72 | - WORDLIFT_VERSION, |
|
73 | - false |
|
74 | - ); |
|
75 | - |
|
76 | - wp_localize_script( 'wl-task-page', '_wlTaskPageSettings', array( 'rest_path' => $this->background_task_route->get_rest_path() ) ); |
|
77 | - ?> |
|
11 | + private $title; |
|
12 | + |
|
13 | + private $menu_slug; |
|
14 | + |
|
15 | + /** |
|
16 | + * @var Background_Task_Route $background_task_route |
|
17 | + */ |
|
18 | + private $background_task_route; |
|
19 | + |
|
20 | + /** |
|
21 | + * @throws Exception if one or more parameters are invalid. |
|
22 | + */ |
|
23 | + public function __construct( $title, $menu_slug, $background_task_route ) { |
|
24 | + Assertions::not_empty( $title, '`$title` cannot be empty.' ); |
|
25 | + Assertions::not_empty( $menu_slug, '`$menu_slug` cannot be empty.' ); |
|
26 | + Assertions::is_a( $background_task_route, 'Wordlift\Task\Background\Background_Task_Route', '`Background_Task_Route` must be of type `Wordlift\Task\Background\Background_Route`.' ); |
|
27 | + |
|
28 | + add_action( 'admin_menu', array( $this, 'admin_menu' ) ); |
|
29 | + |
|
30 | + $this->title = $title; |
|
31 | + $this->menu_slug = $menu_slug; |
|
32 | + $this->background_task_route = $background_task_route; |
|
33 | + } |
|
34 | + |
|
35 | + /** |
|
36 | + * @throws Exception if one or more parameters are invalid. |
|
37 | + */ |
|
38 | + public static function create( $title, $menu_slug, $background_route ) { |
|
39 | + return new self( $title, $menu_slug, $background_route ); |
|
40 | + } |
|
41 | + |
|
42 | + public function admin_menu() { |
|
43 | + |
|
44 | + add_submenu_page( |
|
45 | + 'wl_admin_menu', |
|
46 | + $this->title, |
|
47 | + $this->title, |
|
48 | + 'manage_options', |
|
49 | + $this->menu_slug, |
|
50 | + array( |
|
51 | + $this, |
|
52 | + 'render', |
|
53 | + ) |
|
54 | + ); |
|
55 | + |
|
56 | + } |
|
57 | + |
|
58 | + public function render() { |
|
59 | + |
|
60 | + wp_enqueue_style( |
|
61 | + 'wl-task-page', |
|
62 | + plugin_dir_url( __FILE__ ) . 'assets/task-page.css', |
|
63 | + array(), |
|
64 | + Wordlift::get_instance()->get_version(), |
|
65 | + 'all' |
|
66 | + ); |
|
67 | + |
|
68 | + wp_enqueue_script( |
|
69 | + 'wl-task-page', |
|
70 | + plugin_dir_url( __FILE__ ) . 'assets/task-page.js', |
|
71 | + array( 'wp-api' ), |
|
72 | + WORDLIFT_VERSION, |
|
73 | + false |
|
74 | + ); |
|
75 | + |
|
76 | + wp_localize_script( 'wl-task-page', '_wlTaskPageSettings', array( 'rest_path' => $this->background_task_route->get_rest_path() ) ); |
|
77 | + ?> |
|
78 | 78 | <div class="wrap"> |
79 | 79 | <h2><?php echo esc_html( $this->title ); ?></h2> |
80 | 80 | |
@@ -85,17 +85,17 @@ discard block |
||
85 | 85 | |
86 | 86 | <button id="wl-start-btn" type="button" class="button button-large button-primary"> |
87 | 87 | <?php |
88 | - esc_html_e( 'Start', 'wordlift' ); |
|
89 | - ?> |
|
88 | + esc_html_e( 'Start', 'wordlift' ); |
|
89 | + ?> |
|
90 | 90 | </button> |
91 | 91 | <button id="wl-stop-btn" type="button" class="button button-large button-primary hidden"> |
92 | 92 | <?php |
93 | - esc_html_e( 'Stop', 'wordlift' ); |
|
94 | - ?> |
|
93 | + esc_html_e( 'Stop', 'wordlift' ); |
|
94 | + ?> |
|
95 | 95 | </button> |
96 | 96 | |
97 | 97 | </div> |
98 | 98 | <?php |
99 | - } |
|
99 | + } |
|
100 | 100 | |
101 | 101 | } |
@@ -20,12 +20,12 @@ discard block |
||
20 | 20 | /** |
21 | 21 | * @throws Exception if one or more parameters are invalid. |
22 | 22 | */ |
23 | - public function __construct( $title, $menu_slug, $background_task_route ) { |
|
24 | - Assertions::not_empty( $title, '`$title` cannot be empty.' ); |
|
25 | - Assertions::not_empty( $menu_slug, '`$menu_slug` cannot be empty.' ); |
|
26 | - Assertions::is_a( $background_task_route, 'Wordlift\Task\Background\Background_Task_Route', '`Background_Task_Route` must be of type `Wordlift\Task\Background\Background_Route`.' ); |
|
23 | + public function __construct($title, $menu_slug, $background_task_route) { |
|
24 | + Assertions::not_empty($title, '`$title` cannot be empty.'); |
|
25 | + Assertions::not_empty($menu_slug, '`$menu_slug` cannot be empty.'); |
|
26 | + Assertions::is_a($background_task_route, 'Wordlift\Task\Background\Background_Task_Route', '`Background_Task_Route` must be of type `Wordlift\Task\Background\Background_Route`.'); |
|
27 | 27 | |
28 | - add_action( 'admin_menu', array( $this, 'admin_menu' ) ); |
|
28 | + add_action('admin_menu', array($this, 'admin_menu')); |
|
29 | 29 | |
30 | 30 | $this->title = $title; |
31 | 31 | $this->menu_slug = $menu_slug; |
@@ -35,8 +35,8 @@ discard block |
||
35 | 35 | /** |
36 | 36 | * @throws Exception if one or more parameters are invalid. |
37 | 37 | */ |
38 | - public static function create( $title, $menu_slug, $background_route ) { |
|
39 | - return new self( $title, $menu_slug, $background_route ); |
|
38 | + public static function create($title, $menu_slug, $background_route) { |
|
39 | + return new self($title, $menu_slug, $background_route); |
|
40 | 40 | } |
41 | 41 | |
42 | 42 | public function admin_menu() { |
@@ -59,7 +59,7 @@ discard block |
||
59 | 59 | |
60 | 60 | wp_enqueue_style( |
61 | 61 | 'wl-task-page', |
62 | - plugin_dir_url( __FILE__ ) . 'assets/task-page.css', |
|
62 | + plugin_dir_url(__FILE__).'assets/task-page.css', |
|
63 | 63 | array(), |
64 | 64 | Wordlift::get_instance()->get_version(), |
65 | 65 | 'all' |
@@ -67,16 +67,16 @@ discard block |
||
67 | 67 | |
68 | 68 | wp_enqueue_script( |
69 | 69 | 'wl-task-page', |
70 | - plugin_dir_url( __FILE__ ) . 'assets/task-page.js', |
|
71 | - array( 'wp-api' ), |
|
70 | + plugin_dir_url(__FILE__).'assets/task-page.js', |
|
71 | + array('wp-api'), |
|
72 | 72 | WORDLIFT_VERSION, |
73 | 73 | false |
74 | 74 | ); |
75 | 75 | |
76 | - wp_localize_script( 'wl-task-page', '_wlTaskPageSettings', array( 'rest_path' => $this->background_task_route->get_rest_path() ) ); |
|
76 | + wp_localize_script('wl-task-page', '_wlTaskPageSettings', array('rest_path' => $this->background_task_route->get_rest_path())); |
|
77 | 77 | ?> |
78 | 78 | <div class="wrap"> |
79 | - <h2><?php echo esc_html( $this->title ); ?></h2> |
|
79 | + <h2><?php echo esc_html($this->title); ?></h2> |
|
80 | 80 | |
81 | 81 | <div class="wl-task__progress" style="border: 1px solid #23282D; height: 20px; margin: 8px 0;"> |
82 | 82 | <div class="wl-task__progress__bar" |
@@ -85,12 +85,12 @@ discard block |
||
85 | 85 | |
86 | 86 | <button id="wl-start-btn" type="button" class="button button-large button-primary"> |
87 | 87 | <?php |
88 | - esc_html_e( 'Start', 'wordlift' ); |
|
88 | + esc_html_e('Start', 'wordlift'); |
|
89 | 89 | ?> |
90 | 90 | </button> |
91 | 91 | <button id="wl-stop-btn" type="button" class="button button-large button-primary hidden"> |
92 | 92 | <?php |
93 | - esc_html_e( 'Stop', 'wordlift' ); |
|
93 | + esc_html_e('Stop', 'wordlift'); |
|
94 | 94 | ?> |
95 | 95 | </button> |
96 | 96 |
@@ -8,87 +8,87 @@ |
||
8 | 8 | |
9 | 9 | class Background_Task_Route { |
10 | 10 | |
11 | - const VERSION_STRING = 'wordlift/v1'; |
|
12 | - |
|
13 | - /** |
|
14 | - * @var Background_Task |
|
15 | - */ |
|
16 | - private $background_task; |
|
17 | - |
|
18 | - /** |
|
19 | - * @var string |
|
20 | - */ |
|
21 | - private $route_name; |
|
22 | - |
|
23 | - public function __construct( $background_task, $route_name ) { |
|
24 | - $this->background_task = $background_task; |
|
25 | - $this->route_name = $route_name; |
|
26 | - } |
|
27 | - |
|
28 | - public static function create( $task, $route_name ) { |
|
29 | - $route = new self( $task, $route_name ); |
|
30 | - |
|
31 | - add_action( 'rest_api_init', array( $route, 'register' ) ); |
|
32 | - |
|
33 | - return $route; |
|
34 | - } |
|
35 | - |
|
36 | - /** |
|
37 | - * @throws Exception if the input value is invalid. |
|
38 | - */ |
|
39 | - public function register() { |
|
40 | - Assertions::starts_with( $this->route_name, '/', 'The route name must start with a slash.' ); |
|
41 | - |
|
42 | - register_rest_route( |
|
43 | - self::VERSION_STRING, |
|
44 | - $this->route_name, |
|
45 | - array( |
|
46 | - 'methods' => WP_REST_Server::CREATABLE, |
|
47 | - 'callback' => array( $this->background_task, 'start' ), |
|
48 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
49 | - ) |
|
50 | - ); |
|
51 | - |
|
52 | - register_rest_route( |
|
53 | - self::VERSION_STRING, |
|
54 | - $this->route_name, |
|
55 | - array( |
|
56 | - 'methods' => WP_REST_Server::READABLE, |
|
57 | - 'callback' => array( $this->background_task, 'get_info' ), |
|
58 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
59 | - ) |
|
60 | - ); |
|
61 | - |
|
62 | - register_rest_route( |
|
63 | - self::VERSION_STRING, |
|
64 | - $this->route_name, |
|
65 | - array( |
|
66 | - 'methods' => WP_REST_Server::DELETABLE, |
|
67 | - 'callback' => array( $this->background_task, 'stop' ), |
|
68 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
69 | - ) |
|
70 | - ); |
|
71 | - |
|
72 | - register_rest_route( |
|
73 | - self::VERSION_STRING, |
|
74 | - $this->route_name, |
|
75 | - array( |
|
76 | - 'methods' => 'PUT', |
|
77 | - 'callback' => array( $this->background_task, 'resume' ), |
|
78 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
79 | - ) |
|
80 | - ); |
|
81 | - |
|
82 | - } |
|
83 | - |
|
84 | - public function permission_callback() { |
|
85 | - $user = wp_get_current_user(); |
|
86 | - |
|
87 | - return is_super_admin( $user->ID ) || in_array( 'administrator', (array) $user->roles, true ); |
|
88 | - } |
|
89 | - |
|
90 | - public function get_rest_path() { |
|
91 | - return self::VERSION_STRING . $this->route_name; |
|
92 | - } |
|
11 | + const VERSION_STRING = 'wordlift/v1'; |
|
12 | + |
|
13 | + /** |
|
14 | + * @var Background_Task |
|
15 | + */ |
|
16 | + private $background_task; |
|
17 | + |
|
18 | + /** |
|
19 | + * @var string |
|
20 | + */ |
|
21 | + private $route_name; |
|
22 | + |
|
23 | + public function __construct( $background_task, $route_name ) { |
|
24 | + $this->background_task = $background_task; |
|
25 | + $this->route_name = $route_name; |
|
26 | + } |
|
27 | + |
|
28 | + public static function create( $task, $route_name ) { |
|
29 | + $route = new self( $task, $route_name ); |
|
30 | + |
|
31 | + add_action( 'rest_api_init', array( $route, 'register' ) ); |
|
32 | + |
|
33 | + return $route; |
|
34 | + } |
|
35 | + |
|
36 | + /** |
|
37 | + * @throws Exception if the input value is invalid. |
|
38 | + */ |
|
39 | + public function register() { |
|
40 | + Assertions::starts_with( $this->route_name, '/', 'The route name must start with a slash.' ); |
|
41 | + |
|
42 | + register_rest_route( |
|
43 | + self::VERSION_STRING, |
|
44 | + $this->route_name, |
|
45 | + array( |
|
46 | + 'methods' => WP_REST_Server::CREATABLE, |
|
47 | + 'callback' => array( $this->background_task, 'start' ), |
|
48 | + 'permission_callback' => array( $this, 'permission_callback' ), |
|
49 | + ) |
|
50 | + ); |
|
51 | + |
|
52 | + register_rest_route( |
|
53 | + self::VERSION_STRING, |
|
54 | + $this->route_name, |
|
55 | + array( |
|
56 | + 'methods' => WP_REST_Server::READABLE, |
|
57 | + 'callback' => array( $this->background_task, 'get_info' ), |
|
58 | + 'permission_callback' => array( $this, 'permission_callback' ), |
|
59 | + ) |
|
60 | + ); |
|
61 | + |
|
62 | + register_rest_route( |
|
63 | + self::VERSION_STRING, |
|
64 | + $this->route_name, |
|
65 | + array( |
|
66 | + 'methods' => WP_REST_Server::DELETABLE, |
|
67 | + 'callback' => array( $this->background_task, 'stop' ), |
|
68 | + 'permission_callback' => array( $this, 'permission_callback' ), |
|
69 | + ) |
|
70 | + ); |
|
71 | + |
|
72 | + register_rest_route( |
|
73 | + self::VERSION_STRING, |
|
74 | + $this->route_name, |
|
75 | + array( |
|
76 | + 'methods' => 'PUT', |
|
77 | + 'callback' => array( $this->background_task, 'resume' ), |
|
78 | + 'permission_callback' => array( $this, 'permission_callback' ), |
|
79 | + ) |
|
80 | + ); |
|
81 | + |
|
82 | + } |
|
83 | + |
|
84 | + public function permission_callback() { |
|
85 | + $user = wp_get_current_user(); |
|
86 | + |
|
87 | + return is_super_admin( $user->ID ) || in_array( 'administrator', (array) $user->roles, true ); |
|
88 | + } |
|
89 | + |
|
90 | + public function get_rest_path() { |
|
91 | + return self::VERSION_STRING . $this->route_name; |
|
92 | + } |
|
93 | 93 | |
94 | 94 | } |
@@ -20,15 +20,15 @@ discard block |
||
20 | 20 | */ |
21 | 21 | private $route_name; |
22 | 22 | |
23 | - public function __construct( $background_task, $route_name ) { |
|
23 | + public function __construct($background_task, $route_name) { |
|
24 | 24 | $this->background_task = $background_task; |
25 | 25 | $this->route_name = $route_name; |
26 | 26 | } |
27 | 27 | |
28 | - public static function create( $task, $route_name ) { |
|
29 | - $route = new self( $task, $route_name ); |
|
28 | + public static function create($task, $route_name) { |
|
29 | + $route = new self($task, $route_name); |
|
30 | 30 | |
31 | - add_action( 'rest_api_init', array( $route, 'register' ) ); |
|
31 | + add_action('rest_api_init', array($route, 'register')); |
|
32 | 32 | |
33 | 33 | return $route; |
34 | 34 | } |
@@ -37,15 +37,15 @@ discard block |
||
37 | 37 | * @throws Exception if the input value is invalid. |
38 | 38 | */ |
39 | 39 | public function register() { |
40 | - Assertions::starts_with( $this->route_name, '/', 'The route name must start with a slash.' ); |
|
40 | + Assertions::starts_with($this->route_name, '/', 'The route name must start with a slash.'); |
|
41 | 41 | |
42 | 42 | register_rest_route( |
43 | 43 | self::VERSION_STRING, |
44 | 44 | $this->route_name, |
45 | 45 | array( |
46 | 46 | 'methods' => WP_REST_Server::CREATABLE, |
47 | - 'callback' => array( $this->background_task, 'start' ), |
|
48 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
47 | + 'callback' => array($this->background_task, 'start'), |
|
48 | + 'permission_callback' => array($this, 'permission_callback'), |
|
49 | 49 | ) |
50 | 50 | ); |
51 | 51 | |
@@ -54,8 +54,8 @@ discard block |
||
54 | 54 | $this->route_name, |
55 | 55 | array( |
56 | 56 | 'methods' => WP_REST_Server::READABLE, |
57 | - 'callback' => array( $this->background_task, 'get_info' ), |
|
58 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
57 | + 'callback' => array($this->background_task, 'get_info'), |
|
58 | + 'permission_callback' => array($this, 'permission_callback'), |
|
59 | 59 | ) |
60 | 60 | ); |
61 | 61 | |
@@ -64,8 +64,8 @@ discard block |
||
64 | 64 | $this->route_name, |
65 | 65 | array( |
66 | 66 | 'methods' => WP_REST_Server::DELETABLE, |
67 | - 'callback' => array( $this->background_task, 'stop' ), |
|
68 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
67 | + 'callback' => array($this->background_task, 'stop'), |
|
68 | + 'permission_callback' => array($this, 'permission_callback'), |
|
69 | 69 | ) |
70 | 70 | ); |
71 | 71 | |
@@ -74,8 +74,8 @@ discard block |
||
74 | 74 | $this->route_name, |
75 | 75 | array( |
76 | 76 | 'methods' => 'PUT', |
77 | - 'callback' => array( $this->background_task, 'resume' ), |
|
78 | - 'permission_callback' => array( $this, 'permission_callback' ), |
|
77 | + 'callback' => array($this->background_task, 'resume'), |
|
78 | + 'permission_callback' => array($this, 'permission_callback'), |
|
79 | 79 | ) |
80 | 80 | ); |
81 | 81 | |
@@ -84,11 +84,11 @@ discard block |
||
84 | 84 | public function permission_callback() { |
85 | 85 | $user = wp_get_current_user(); |
86 | 86 | |
87 | - return is_super_admin( $user->ID ) || in_array( 'administrator', (array) $user->roles, true ); |
|
87 | + return is_super_admin($user->ID) || in_array('administrator', (array) $user->roles, true); |
|
88 | 88 | } |
89 | 89 | |
90 | 90 | public function get_rest_path() { |
91 | - return self::VERSION_STRING . $this->route_name; |
|
91 | + return self::VERSION_STRING.$this->route_name; |
|
92 | 92 | } |
93 | 93 | |
94 | 94 | } |