PluginProbe
MainWP Dashboard: Self-hosted WordPress Management for Agencies / 6.0.11
MainWP Dashboard: Self-hosted WordPress Management for Agencies v6.0.11
6.2 6.1.8 6.1.7 6.1.6 6.1.5 6.1.4 6.1.3 6.1.2 6.1.1 6.1 6.0.12 6.0.11 4.6.0.1 5.0 5.0.1 5.0.2 5.0.3 5.0.3.1 5.0.3.2 5.1 5.1.1 5.2 5.2.1 5.2.2 5.3 All 153 releases
mainwp / widgets / widget-mainwp-notes.php

widget-mainwp-notes.php in MainWP Dashboard: Self-hosted WordPress Management for Agencies 6.0.11, at widgets/widget-mainwp-notes.php

121 lines 4.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * MainWP Notes Widget
4 *
5 * Display current Child Site Notes.
6 *
7 * @package MainWP/Dashboard
8 */
9
10 namespace MainWP\Dashboard;
11
12 // Exit if accessed directly.
13 if ( ! defined( 'ABSPATH' ) ) {
14 exit;
15 }
16
17 /**
18 * Class MainWP_Notes
19 *
20 * Grab Child Site Notes & Build Notes Widget.
21 */
22 class MainWP_Notes { // phpcs:ignore Generic.Classes.OpeningBraceSameLine.ContentAfterBrace -- NOSONAR.
23
24 /**
25 * Method get_class_name()
26 *
27 * @return string __CLASS__ Class Name
28 */
29 public static function get_class_name() {
30 return __CLASS__;
31 }
32
33 /**
34 * Method render()
35 *
36 * Grab Child Site Notes & Render Widget.
37 *
38 * @uses \MainWP\Dashboard\MainWP_DB::get_website_by_id()
39 * @uses \MainWP\Dashboard\MainWP_System_Utility::get_current_wpid()
40 * @uses \MainWP\Dashboard\MainWP_UI::render_modal_edit_notes()
41 * @uses \MainWP\Dashboard\MainWP_Utility::ctype_digit()
42 * @uses \MainWP\Dashboard\MainWP_Utility::esc_content()
43 */
44 public static function render() {
45 $current_wpid = MainWP_System_Utility::get_current_wpid();
46
47 if ( ! MainWP_Utility::ctype_digit( $current_wpid ) ) {
48 return;
49 }
50
51 $website = MainWP_DB::instance()->get_website_by_id( $current_wpid, true );
52 $note = html_entity_decode( $website->note );
53 $esc_note = MainWP_Utility::esc_content( $note );
54 ?>
55 <div class="mainwp-widget-header">
56 <h2 class="ui header handle-drag">
57 <?php
58 /**
59 * Filter: mainwp_notes_widget_title
60 *
61 * Filters the Notes widget title text.
62 *
63 * @param object $website Object containing the child site info.
64 *
65 * @since 4.1
66 */
67 echo esc_html( apply_filters( 'mainwp_notes_widget_title', esc_html__( 'Notes', 'mainwp' ), $website ) );
68 ?>
69 <div class="sub header"><?php esc_html_e( 'Child site notes', 'mainwp' ); ?></div>
70 </h2>
71 </div>
72
73 <div class="mainwp-scrolly-overflow">
74 <?php
75 /**
76 * Action: mainwp_notes_widget_top
77 *
78 * Fires at the top of the Notes widget on the Individual site overview page.
79 *
80 * @param object $website Object containing the child site info.
81 *
82 * @since 4.1
83 */
84 do_action( 'mainwp_notes_widget_top', $website );
85
86 if ( empty( $website->note ) ) {
87 MainWP_UI::render_empty_element_placeholder( __( 'Add your first note', 'mainwp' ), __( 'Create a website note for updates, reminders, or anything you want to track.', 'mainwp' ), '<em data-emoji=":pencil2:" class="medium"></em>' );
88 } else {
89 ?>
90 <div class="content">
91 <?php
92 echo wp_unslash( $esc_note ); // phpcs:ignore WordPress.Security.EscapeOutput
93 ?>
94 </div>
95 <?php
96 }
97 ?>
98 <span style="display: none" id="mainwp-notes-<?php echo intval( $current_wpid ); ?>-note"><?php echo wp_unslash( $esc_note ); // phpcs:ignore WordPress.Security.EscapeOutput ?></span>
99 <?php
100 /**
101 * Action: mainwp_notes_widget_bottom
102 *
103 * Fires at the bottom of the Notes widget on the Individual site overview page.
104 *
105 * @param object $website Object containing the child site info.
106 *
107 * @since 4.1
108 */
109 do_action( 'mainwp_notes_widget_bottom', $website );
110 ?>
111 </div>
112 <div class="ui one column grid mainwp-widget-footer">
113 <div class="column">
114 <a href="javascript:void(0)" class="ui basic mini button mainwp-edit-site-note" id="mainwp-notes-<?php echo intval( $website->id ); ?>" <?php echo '' !== $website->note ? '' : 'add-new="1"'; ?>><?php echo '' !== $website->note ? esc_html__( 'Edit Notes', 'mainwp' ) : esc_html__( 'Add Notes', 'mainwp' ); ?></a>
115 <?php MainWP_UI::render_modal_edit_notes(); ?>
116 </div>
117 </div>
118 <?php
119 }
120 }
121