Skip to content

Commit 2f0ab90

Browse files
feat: UI, export and email report
1 parent 948776d commit 2f0ab90

File tree

7 files changed

+460
-63
lines changed

7 files changed

+460
-63
lines changed

css/settings.css

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2707,4 +2707,55 @@ li.draggable-item .components-panel__body-toggle.components-button{
27072707
display: flex;
27082708
flex-direction: row;
27092709
gap: 0.5rem;
2710+
}
2711+
2712+
.fz-logs-header-title {
2713+
display: flex;
2714+
flex-direction: row;
2715+
gap: 0.5rem;
2716+
align-items: baseline;
2717+
}
2718+
2719+
.fz-block__column {
2720+
display: flex;
2721+
flex-direction: column;
2722+
gap: 1rem;
2723+
}
2724+
2725+
.fz-group__row {
2726+
display: flex;
2727+
flex-direction: row;
2728+
gap: 1rem;
2729+
align-items: center;
2730+
}
2731+
2732+
.fz-group__left {
2733+
justify-content: flex-end;
2734+
}
2735+
2736+
.btn-outline-primary.fz-is-destructive {
2737+
color: #cc1818;
2738+
border-color: #cc1818;
2739+
}
2740+
2741+
.btn-outline-primary.fz-is-destructive:hover {
2742+
color: #cc1818;
2743+
border-color: #cc1818;
2744+
box-shadow: inset 0 0 0 1px #cc1818, inset 0 0 0 2px #f7f9fd;
2745+
background: #fdf7f7;
2746+
}
2747+
2748+
.fz-log-file-size-wrapper {
2749+
display: flex;
2750+
flex-direction: row;
2751+
gap: 0.5rem;
2752+
align-items: baseline;
2753+
}
2754+
2755+
.fz-log-file-size-wrapper .dashicons {
2756+
font-size: 1.9em;
2757+
}
2758+
2759+
.fz-hidden {
2760+
display: none;
27102761
}

includes/abstract/feedzy-rss-feeds-admin-abstract.php

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,8 @@ public function rest_route() {
527527
),
528528
)
529529
);
530+
531+
Feedzy_Rss_Feeds_Log::get_instance()->register_endpoints();
530532
}
531533

532534
/**
@@ -902,12 +904,29 @@ function ( $time ) use ( $cache_time ) {
902904
if ( ! empty( $error ) ) {
903905
do_action( 'themeisle_log_event', FEEDZY_NAME, sprintf( 'Error while parsing feed: %s', $error ), 'error', __FILE__, __LINE__ );
904906

907+
Feedzy_Rss_Feeds_Log::error(
908+
sprintf( 'Error while parsing feed: %s', $error ),
909+
array(
910+
'feed_url' => $feed_url,
911+
'cache' => $cache,
912+
'sc' => $sc,
913+
)
914+
);
915+
905916
// curl: (60) SSL certificate problem: unable to get local issuer certificate.
906917
if ( strpos( $error, 'SSL certificate' ) !== false ) {
907-
do_action( 'themeisle_log_event', FEEDZY_NAME, sprintf( 'Got an SSL Error (%s), retrying by ignoring SSL', $error ), 'debug', __FILE__, __LINE__ );
918+
Feedzy_Rss_Feeds_Log::error(
919+
sprintf( 'Got an SSL Error (%s), retrying by ignoring SSL', $error ),
920+
array(
921+
'feed_url' => $feed_url,
922+
'cache' => $cache,
923+
'sc' => $sc,
924+
)
925+
);
908926
$feed = $this->init_feed( $feed_url, $cache, $sc, false );
909927
} elseif ( is_string( $feed_url ) || ( is_array( $feed_url ) && 1 === count( $feed_url ) ) ) {
910928
do_action( 'themeisle_log_event', FEEDZY_NAME, 'Trying to use raw data', 'debug', __FILE__, __LINE__ );
929+
911930
$data = wp_remote_retrieve_body( wp_safe_remote_get( $feed_url, array( 'user-agent' => $default_agent ) ) );
912931
$cloned_feed->set_raw_data( $data );
913932
$cloned_feed->init();

includes/admin/feedzy-rss-feeds-admin.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1104,6 +1104,10 @@ function ( $item ) {
11041104
$settings['general']['auto-categories'] = array_values( $auto_categories );
11051105
$settings['general']['feedzy-telemetry'] = isset( $_POST['feedzy-telemetry'] ) ? absint( wp_unslash( $_POST['feedzy-telemetry'] ) ) : '';
11061106
$settings['general']['feedzy-delete-media'] = isset( $_POST['feedzy-delete-media'] ) ? absint( wp_unslash( $_POST['feedzy-delete-media'] ) ) : '';
1107+
1108+
$settings['logs']['level'] = isset( $_POST['logs-logging-level'] ) ? sanitize_text_field( wp_unslash( $_POST['logs-logging-level'] ) ) : '';
1109+
$settings['logs']['email'] = isset( $_POST['feedzy-email-error-address'] ) ? sanitize_email( wp_unslash( $_POST['feedzy-email-error-address'] ) ) : '';
1110+
$settings['logs']['send_email_report'] = isset( $_POST['feedzy-email-error-enabled'] ) ? absint( wp_unslash( $_POST['feedzy-email-error-enabled'] ) ) : '';
11071111
break;
11081112
case 'headers':
11091113
$settings['header']['user-agent'] = isset( $_POST['user-agent'] ) ? sanitize_text_field( wp_unslash( $_POST['user-agent'] ) ) : '';
@@ -1124,6 +1128,8 @@ function ( $item ) {
11241128
if ( ! empty( $settings['general'] ) ) {
11251129
update_option( 'feedzy_rss_feeds_logger_flag', $settings['general']['feedzy-telemetry'] ? 'yes' : false );
11261130
}
1131+
1132+
Feedzy_Rss_Feeds_Log::get_instance()->try_to_send_email_report();
11271133
}
11281134

11291135
/**

0 commit comments

Comments
 (0)