find_all( array( 'status' => 'publish' ) ); $due_overdue = array(); foreach ( $peptides as $dto ) { $status = get_post_meta( $dto->id, '_pr_verification_status', true ) ?: 'current'; if ( in_array( $status, array( 'due', 'overdue' ), true ) ) { $last_verified = get_post_meta( $dto->id, '_pr_last_source_verified', true ); $days_since = $last_verified ? (int) ( ( time() - strtotime( $last_verified ) ) / DAY_IN_SECONDS ) : 999; $due_overdue[] = array( 'id' => $dto->id, 'title' => $dto->title, 'status' => $status, 'velocity' => get_post_meta( $dto->id, '_pr_verification_velocity', true ) ?: 'medium', 'last_verified' => $last_verified, 'days_since' => $days_since, ); } } // Sort by days_since descending (most overdue first). usort( $due_overdue, static function ( $a, $b ) { return $b['days_since'] <=> $a['days_since']; } ); if ( empty( $due_overdue ) ) { echo '

' . esc_html__( 'All monographs are current. ', 'peptide-repo-core' ); echo esc_html__( 'Next scan: ', 'peptide-repo-core' ); $next = wp_next_scheduled( 'pr_core_verification_scan' ); if ( $next ) { echo esc_html( wp_date( 'Y-m-d H:i:s', $next ) ); } else { echo esc_html__( '(not scheduled)', 'peptide-repo-core' ); } echo '

'; } else { echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; foreach ( $due_overdue as $item ) { $edit_url = get_edit_post_link( $item['id'] ); printf( '', esc_url( get_permalink( $item['id'] ) ), esc_html( $item['title'] ), esc_attr( $item['status'] ), esc_html( ucfirst( $item['status'] ) ), esc_html( ucfirst( $item['velocity'] ) ), esc_html( $item['last_verified'] ?? '—' ), $item['days_since'], esc_url( $edit_url ) ); } echo '
' . esc_html__( 'Title', 'peptide-repo-core' ) . '' . esc_html__( 'Verdict', 'peptide-repo-core' ) . '' . esc_html__( 'Velocity', 'peptide-repo-core' ) . '' . esc_html__( 'Last Verified', 'peptide-repo-core' ) . '' . esc_html__( 'Days Overdue', 'peptide-repo-core' ) . '
%s%s%s%s%dEdit
'; } echo '

'; $nonce = wp_create_nonce( 'pr_core_scan_now' ); printf( '

', esc_attr( $nonce ), esc_html__( 'Scan Now', 'peptide-repo-core' ) ); echo '

'; } }