Tribe__Tickets__Commerce__PayPal__Order::set_meta( string $key, mixed $value )

Sets a meta key value on the Order.

This is a database-light operation: meta is not written to the database but only in the object array cache; use udpate method to persist the Order meta.

See also


Top ↑

Parameters

$key

(string) (Required)

$value

(mixed) (Required)


Top ↑

Source

File: src/Tribe/Commerce/PayPal/Order.php

	public function set_meta( $key, $value ) {
		if ( 0 === strpos( $key, self::$meta_prefix ) ) {
			$key = str_replace( self::$meta_prefix, '', $key );
		}

		switch ( $key ) {
			case 'payment_status':
				if ( ! empty( $value ) ) {
					$this->status = Tribe__Tickets__Commerce__PayPal__Stati::cast_payment_status( $value );
				}

				return;
			case 'txn_id':
				$this->paypal_order_id = $value;

				return;
			case 'attendees':
				$value = is_array( $value ) ? $value : array( $value );
				/** @var Tribe__Tickets__Commerce__PayPal__Main $paypal */
				$paypal          = tribe( 'tickets.commerce.paypal' );
				$this->attendees = array_filter( array_map( array( $paypal, 'get_attendee' ), $value ) );

				return;
			case 'items':
				$this->meta['items'] = $value;
				$this->ticket_ids    = wp_list_pluck( $value, 'ticket_id' );
				$this->post_ids      = wp_list_pluck( $value, 'post_id' );

				return;
			case 'payment_date':
				$this->meta['payment_date'] = Tribe__Date_Utils::reformat( $value, Tribe__Date_Utils::DBDATETIMEFORMAT );

				return;
			default:
				$this->meta[ $key ] = $value;

				return;
		}

	}

Top ↑

Changelog

Changelog
Version Description
4.7 Introduced.