PluginProbe
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot / 4.1.2
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot v4.1.2
4.9.1 4.9.0 4.8.2 4.8.1 4.8.0 4.7.0 4.6.2 4.6.1 4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 4.5.1 4.5.0 4.4.1 4.4.0 3.3.4 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.5.2 All 199 releases
betterdocs / includes / Core / Scripts.php

Scripts.php in BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot 4.1.2, at includes/Core/Scripts.php

140 lines 5.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace WPDeveloper\BetterDocs\Core;
4
5 use WPDeveloper\BetterDocs\Utils\Base;
6 use WPDeveloper\BetterDocs\Utils\Helper;
7
8 class Scripts extends Base {
9 protected $settings;
10
11 public function __construct( Settings $settings ) {
12 $this->settings = $settings;
13
14 add_action( 'init', [ $this, 'init' ], 1 );
15 }
16
17 public function init() {
18 $assets = betterdocs()->assets;
19
20 // Vendor CSS
21 $assets->register( 'simplebar', 'vendor/css/simplebar.css' );
22
23 // Vendor JS
24 $assets->register( 'simplebar', 'vendor/js/simplebar.js' );
25
26 if ( ! wp_script_is( 'clipboard', 'registered' ) ) {
27 $assets->register( 'clipboard', 'vendor/js/clipboard.min.js' );
28 }
29
30 // Shortcodes Styles Registrations
31 $assets->register( 'betterdocs-search', 'public/css/search.css' );
32 $assets->register( 'betterdocs-search-modal', 'public/css/search-modal.css' );
33 $assets->register( 'betterdocs-social-share', 'public/css/social-share.css' );
34 $assets->register( 'betterdocs-feedback-form', 'public/css/feedback-form.css' );
35 $assets->register( 'betterdocs-reactions', 'public/css/reactions.css' );
36 $assets->register( 'betterdocs-toc', 'public/css/toc.css' );
37 $assets->register( 'betterdocs-faq', 'public/css/faq.css' );
38 $assets->register( 'betterdocs-category-tab-grid', 'public/css/category-tab-grid.css' );
39 $assets->register( 'reading-time', 'public/css/reading-time.css' );
40
41 // Template Parts
42 $assets->register( 'betterdocs-sidebar', 'public/css/sidebar.css' );
43 $assets->register( 'betterdocs-breadcrumb', 'public/css/breadcrumb.css' );
44 $assets->register( 'betterdocs-single', 'public/css/single.css' );
45 $assets->register( 'betterdocs-docs', 'public/css/docs.css' );
46 $assets->register( 'betterdocs-pagination', 'public/css/pagination.css' );
47 $assets->register( 'betterdocs-doc_category', 'public/css/tax-doc_category.css', [ 'betterdocs-breadcrumb', 'betterdocs-pagination' ] );
48 $assets->register( 'betterdocs-category-archive-header', 'public/css/archive-header.css' );
49 $assets->register( 'betterdocs-category-archive-doc-list', 'public/css/archive-doc-list.css' );
50 $assets->register( 'betterdocs-article-summary', 'public/css/article-summary.css' );
51 $assets->register( 'betterdocs-author', 'public/css/author.css' );
52
53 $assets->register( 'betterdocs-category-grid', 'public/css/category-grid.css', [ 'simplebar' ] );
54 $assets->register( 'betterdocs-category-box', 'public/css/category-box.css' );
55 $assets->register( 'betterdocs-category-grid-list', 'public/css/category-grid-list.css' );
56
57 // JS
58 $assets->register( 'betterdocs', 'public/js/betterdocs.js', [ 'jquery' ] );
59 // Shortcode JS
60 $assets->register( 'betterdocs-category-toggler', 'public/js/category-toggler.js', [ 'jquery' ] );
61 $assets->register(
62 'betterdocs-category-grid',
63 'public/js/category-grid.js',
64 [
65 'jquery',
66 'masonry',
67 'simplebar',
68 'betterdocs-category-toggler'
69 ]
70 );
71 $assets->register( 'betterdocs-faq', 'shortcodes/js/faq.js', [ 'jquery' ] );
72 $assets->register( 'betterdocs-reactions', 'shortcodes/js/reactions.js', [ 'jquery' ] );
73 $assets->register( 'betterdocs-search', 'shortcodes/js/search.js', [ 'jquery' ] );
74 $assets->register( 'betterdocs-search-modal', 'shortcodes/js/search-modal.js', [ 'jquery' ] );
75
76 $assets->localize(
77 'betterdocs',
78 'betterdocsConfig',
79 [
80 'ajax_url' => admin_url( 'admin-ajax.php' ),
81 'copy_text' => __( 'Copied', 'betterdocs' ),
82 'sticky_toc_offset' => $this->settings->get( 'sticky_toc_offset' ),
83 'summary_nonce' => wp_create_nonce( 'betterdocs_article_summary_nonce' ),
84 'summary_error' => __( 'Failed to generate doc summary. Please try again.', 'betterdocs' )
85 ]
86 );
87
88 $assets->localize(
89 'betterdocs-search',
90 'betterdocsSearchConfig',
91 [
92 'ajax_url' => admin_url( 'admin-ajax.php' ),
93 'search_letter_limit' => $this->settings->get( 'search_letter_limit' )
94 ]
95 );
96
97 $assets->localize(
98 'betterdocs-search-modal',
99 'betterdocsSearchModalConfig',
100 [
101 'ajax_url' => admin_url( 'admin-ajax.php' ),
102 'rest_url' => esc_url_raw(rest_url()),
103 'advance_search' => $this->settings->get( 'advance_search' ),
104 'child_category_exclude' => $this->settings->get( 'child_category_exclude' ),
105 'popular_keyword_limit' => $this->settings->get( 'popular_keyword_limit' ),
106 'search_letter_limit' => $this->settings->get( 'search_letter_limit' ),
107 'search_placeholder' => $this->settings->get( 'search_placeholder' ),
108 'search_button_text' => $this->settings->get( 'search_button_text' ),
109 'search_not_found_text' => $this->settings->get( 'search_not_found_text' ),
110 'kb_based_search' => $this->settings->get( 'kb_based_search' )
111 ]
112 );
113
114 /**
115 * Localize This In Order To Know If This Shortcode Is Arriving From Betterdocs Templates Or Not
116 */
117 betterdocs()->assets->localize(
118 'betterdocs-category-grid',
119 'betterdocsCategoryGridConfig',
120 [
121 'is_betterdocs_templates' => betterdocs()->helper->is_templates() ? true : false
122 ]
123 );
124
125 $this->blocks( $assets );
126
127 return $assets;
128 }
129
130
131
132 public function blocks( $assets ) {
133 $assets->register( 'betterdocs-fontawesome', 'vendor/css/font-awesome5.css' );
134 $assets->register( 'betterdocs-blocks-category-box', 'blocks/categorybox/default.css' );
135 $assets->register( 'betterdocs-blocks-category-grid', 'blocks/categorygrid/default.css' );
136 $assets->register( 'betterdocs-feedback-form-editor', 'blocks/feedback-form/style-feedback-editor.css' );
137 $assets->register( 'betterdocs-doc-archive-list', 'blocks/doc-archive-list/default.css' );
138 }
139 }
140