EModal_Model_Modal


Description Description


Source Source

File: includes/importer/easy-modal-v2/model/modal.php

class EModal_Model_Modal extends EModal_Model {
	protected $_class_name = 'EModal_Model_Modal';
	protected $_table_name = 'em_modals';
	protected $meta;
	protected $_default_fields = array(
		'id'          => null,
		'theme_id'    => 1,
		'name'        => '',
		'title'       => '',
		'content'     => '',
		'created'     => '0000-00-00 00:00:00',
		'modified'    => '0000-00-00 00:00:00',
		'is_sitewide' => 0,
		'is_system'   => 0,
		'is_trash'    => 0
	);

	public function __construct( $id = null ) {
		parent::__construct( $id );
		$this->load_meta();

		return $this;
	}

	public function __get( $key ) {
		if ( $key == 'meta' ) {
			return $this->meta;
		} else {
			return parent::__get( $key );
		}
	}

	public function save() {
		if ( ! $this->id ) {
			$this->created = date( 'Y-m-d H:i:s' );
		}
		$this->modified = date( 'Y-m-d H:i:s' );
		parent::save();
		$this->meta->modal_id = $this->id;
		$this->meta->save();
	}

	public function load_meta() {
		if ( empty( $this->meta ) ) {
			$this->meta = new EModal_Model_Modal_Meta( $this->id );
		}

		return $this->meta;
	}

	public function as_array() {
		$array         = parent::as_array();
		$array['meta'] = $this->meta->as_array();

		return $array;
	}

	public function set_fields( array $data ) {
		if ( ! empty( $data['meta'] ) ) {
			$this->meta->set_fields( $data['meta'] );
		}
		parent::set_fields( $data );
	}
}


Top ↑

Methods Methods


Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.