10 )
);
if ( ! is_wp_error( $response ) && 200 === wp_remote_retrieve_response_code( $response ) ) {
$body = wp_remote_retrieve_body( $response );
$data = json_decode( $body, true );
if ( $data && isset( $data['tag_name'] ) ) {
$tag = ltrim( (string) $data['tag_name'], 'vV' );
$release_info = array(
'version' => $tag,
'download_url' => $data['zipball_url'] ?? '',
'notes' => $data['body'] ?? '',
'published_at' => $data['published_at'] ?? '',
);
// Cache für 6 Stunden
set_transient( $transient_key, $release_info, 6 * HOUR_IN_SECONDS );
} else {
// Kurzzeit-Cache bei fehlerhafter Antwort
set_transient( $transient_key, array(), HOUR_IN_SECONDS );
}
} else {
// Fehler beim Abruf -> Kurzzeit-Cache
set_transient( $transient_key, array(), HOUR_IN_SECONDS );
}
}
return $release_info;
}
// Admin-Notice anzeigen wenn Update vorhanden
function mrp_show_update_notice() {
if ( ! current_user_can( 'manage_options' ) ) {
return;
}
$current_version = mrp_get_plugin_version();
$latest_release = mrp_get_latest_release_info();
if ( ! empty( $latest_release['version'] ) && version_compare( $current_version, $latest_release['version'], '<' ) ) {
$refresh_url = wp_nonce_url( admin_url( 'plugins.php?mrp_clear_cache=1' ), 'mrp_clear_cache_action' );
?>
' . esc_html__('Sanfte Animationen für das Auf- und Zuklappen der Regeln aktivieren.', 'multi-rules') . '';
}
function mrp_enable_drag_drop_render() {
$options = get_option('mrp_settings');
$enabled = ($options === false || !is_array($options)) ? '1' : (isset($options['enable_drag_drop']) ? $options['enable_drag_drop'] : '0');
echo '';
}
function mrp_show_last_updated_render() {
$options = get_option('mrp_settings');
$is_checked = ($options === false || !is_array($options)) ? '1' : (isset($options['show_last_updated']) ? $options['show_last_updated'] : '0');
echo '