I have a ticket generated using tickera plugin in WordPress, it contains an image, I want the image in the ticket to be the logged in user's profile image not the image specified with url when adding the element of the image (the drag & drop elements)
I have tried to change the values inside the functions of the file "tcpdf_images.php" with get_avatar() but there were a lot of values to change and each value has a specifications like: ['mime'] or ['extension'] and else, I want to make it in a simple way maybe to edit the tcpdf.php or tcpdf_images.php
My problem was solved by adding user_profile_picture_element.php file inside wp-content/plugins/tickera/includes/ticket-elements/
user_profile_picture_element.php
<?php
if ( ! class_exists( 'tc_user_profile_picture_element' ) ) {
class tc_user_profile_picture_element extends TC_Ticket_Template_Elements {
var $element_name = 'tc_user_profile_picture_element';
var $element_title = 'User Profile Picture';
var $font_awesome_icon = '<span class="fa fa-user"></span>';
function on_creation() {
$this->element_title = apply_filters( 'tc_user_profile_picture_element_title', __( 'User Profile Picture', 'tc' ) );
}
function admin_content() {
echo tc_esc_html( parent::get_cell_alignment() );
echo self::get_dimension_field();
echo tc_esc_html( parent::get_element_margins() );
}
function ticket_content( $ticket_instance_id = false, $ticket_type_id = false ) {
$ticket_instance = new TC_Ticket_Instance( $ticket_instance_id );
$author_id = $ticket_instance->details->post_author;
$gravatar_url = get_avatar_url( $author_id );
$width = isset( $this->template_metas[ $this->element_name . '_width' ] ) ? $this->template_metas[ $this->element_name . '_width' ] : '';
$height = isset( $this->template_metas[ $this->element_name . '_height' ] ) ? $this->template_metas[ $this->element_name . '_height' ] : '';
return '<br/>' . apply_filters( 'tc_user_profile_picture_element', '<img src="' . esc_url( $gravatar_url ) . '"' . ( $width ? ' width="' . (int) $width . '"' : '' ) . ( $height ? ' height="' . (int) $height . '"' : '' ) . '/>' );
}
function get_dimension_field() { ?>
<label><?php echo esc_html( 'Dimension' ); ?></label>
<?php _e( 'Width', 'tc' ); ?> <input class="ticket_element_padding" type="text" name="<?php echo esc_attr( $this->element_name ); ?>_width_post_meta" value="<?php echo esc_attr( isset( $this->template_metas[ $this->element_name . '_width' ] ) ? $this->template_metas[ $this->element_name . '_width' ] : '' ); ?>"/>
<?php _e( 'Height', 'tc' ); ?> <input class="ticket_element_padding" type="text" name="<?php echo esc_attr( $this->element_name ); ?>_height_post_meta" value="<?php echo esc_attr( isset( $this->template_metas[ $this->element_name . '_height' ] ) ? $this->template_metas[ $this->element_name . '_height' ] : '' ); ?>"/>
<?php }
}
tc_register_template_element( 'tc_user_profile_picture_element', __( 'User Profile Picture', 'tc' ) );
}