getId(); $post = get_post( $id ); $status = $this->status( $post ? $post->post_status : 'publish', $rule ); ?> getTitle() ); ?> renderLockInfo( $id ); ?>
'draft', 'label' => $object ? $object->label : $postStatus ); } $status = $rule->getEffectiveStatus(); switch ( $status ) { case 'scheduled': /* translators: %s: date */ $label = sprintf( __( 'Starts %s', 'tier-pricing-table' ), wp_date( $format, $rule->getStartTimestamp() ) ); break; case 'expired': /* translators: %s: date */ $label = sprintf( __( 'Ended %s', 'tier-pricing-table' ), wp_date( $format, $rule->getEndTimestamp() ) ); break; default: $label = StatusViews::labels()[ $status ]; } return array( 'key' => $status, 'label' => $label ); } /** * @return string[] Escaped HTML fragments. */ protected function metaParts( GlobalPricingRule $rule ): array { /* translators: %d: priority number */ $parts = array( esc_html( sprintf( __( 'Priority %d', 'tier-pricing-table' ), $rule->getPriority() ) ) ); if ( $rule->hasSchedule() ) { $parts[] = esc_html( StatusBox::scheduleSummary( $rule ) ); } // only a problem for a rule in force, and only rules in force can override it (skipped ones never apply) $overriding = 'publish' === get_post_status( $rule->getId() ) && $rule->canBeOverridden() ? $this->getOverlaps()->findOverriding( $rule, GlobalTieredPricingCPT::getGlobalRules( true, false ) ) : array(); if ( $overriding ) { $names = array_map( function ( GlobalPricingRule $other ) { return $other->getTitle(); }, $overriding ); $parts[] = sprintf( '%s', esc_attr( implode( ', ', $names ) ), /* translators: %d: number of rules */ esc_html( sprintf( _n( 'Overridden by %d rule', 'Overridden by %d rules', count( $overriding ), 'tier-pricing-table' ), count( $overriding ) ) ) ); } return $parts; } /** * The "someone is editing" line WordPress's own title column prints; the heartbeat updates it. */ protected function renderLockInfo( int $id ) { if ( ! current_user_can( 'edit_post', $id ) || 'trash' === get_post_status( $id ) ) { return; } $lockHolder = wp_check_post_lock( $id ); $lockHolder = $lockHolder ? get_userdata( $lockHolder ) : null; ?>