2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  WordPress  Administration  Media  API . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package  WordPress 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Administration 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Defines  the  default  media  upload  tabs 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array  default  tabs 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_tabs ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_default_tabs  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'type'      =>  __ (  'From Computer'  ),  // handler action suffix => tab text
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'type_url'  =>  __ (  'From URL'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'gallery'   =>  __ (  'Gallery'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'library'   =>  __ (  'Media Library'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  available  tabs  in  the  legacy  ( pre - 3.5 . 0 )  media  popup . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array  $_default_tabs  An  array  of  media  tabs . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  apply_filters (  'media_upload_tabs' ,  $_default_tabs  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  the  gallery  tab  back  to  the  tabs  array  if  post  has  image  attachments 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  wpdb  $wpdb  WordPress  database  abstraction  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $tabs 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array  $tabs  with  gallery  if  post  has  image  attachment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  update_gallery_tab (  $tabs  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									global  $wpdb ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  isset (  $_REQUEST [ 'post_id' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $tabs [ 'gallery' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  $tabs ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$post_id  =  intval (  $_REQUEST [ 'post_id' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $post_id  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$attachments  =  intval (  $wpdb -> get_var (  $wpdb -> prepare (  " SELECT count(*) FROM  $wpdb->posts  WHERE post_type = 'attachment' AND post_status != 'trash' AND post_parent = %d " ,  $post_id  )  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $attachments  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $tabs [ 'gallery' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  $tabs ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$tabs [ 'gallery' ]  =  sprintf (  __ (  'Gallery (%s)'  ),  " <span id='attachments-count'> $attachments </span> "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $tabs ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  tabs  UI . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $redir_tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  the_media_upload_tabs ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									global  $redir_tab ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$tabs     =  media_upload_tabs (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$default  =  'type' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $tabs  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										echo  " <ul id='sidemenu'> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  isset (  $redir_tab  )  &&  array_key_exists (  $redir_tab ,  $tabs  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$current  =  $redir_tab ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										}  elseif  (  isset (  $_GET [ 'tab' ]  )  &&  array_key_exists (  $_GET [ 'tab' ],  $tabs  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$current  =  $_GET [ 'tab' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											/** This filter is documented in wp-admin/media-upload.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$current  =  apply_filters (  'media_upload_default_tab' ,  $default  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $tabs  as  $callback  =>  $text  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$class  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  $current  ==  $callback  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$class  =  "  class='current' " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$href  =  add_query_arg ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'tab'             =>  $callback , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													's'               =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'paged'           =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'post_mime_type'  =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'm'               =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$link  =  " <a href=' "  .  esc_url (  $href  )  .  " ' $class > $text </a> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " \t <li id=' "  .  esc_attr (  " tab- $callback "  )  .  " '> $link </li> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  " </ul> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  image  HTML  to  send  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int           $id       Image  attachment  id . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string        $caption  Image  caption . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string        $title    Image  title  attribute . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string        $align    Image  CSS  alignment  property . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string        $url      Optional .  Image  src  URL .  Default  empty . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  bool | string   $rel      Optional .  Value  for  rel  attribute  or  whether  to  add  a  default  value .  Default  false . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string | array  $size     Optional .  Image  size .  Accepts  any  valid  image  size ,  or  an  array  of  width 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *                               and  height  values  in  pixels  ( in  that  order ) .  Default  'medium' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string        $alt      Optional .  Image  alt  attribute .  Default  empty . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string  The  HTML  output  to  insert  into  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  get_image_send_to_editor (  $id ,  $caption ,  $title ,  $align ,  $url  =  '' ,  $rel  =  false ,  $size  =  'medium' ,  $alt  =  ''  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$html  =  get_image_tag (  $id ,  $alt ,  '' ,  $align ,  $size  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $rel  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_string (  $rel  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$rel  =  ' rel="'  .  esc_attr (  $rel  )  .  '"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$rel  =  ' rel="attachment wp-att-'  .  intval (  $id  )  .  '"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$rel  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $url  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$html  =  '<a href="'  .  esc_attr (  $url  )  .  '"'  .  $rel  .  '>'  .  $html  .  '</a>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  image  HTML  markup  to  send  to  the  editor  when  inserting  an  image . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $html     The  image  HTML  markup  to  send . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  int           $id       The  attachment  id . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $caption  The  image  caption . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $title    The  image  title . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $align    The  image  alignment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $url      The  image  source  URL . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string | array  $size     Size  of  image .  Image  size  or  array  of  width  and  height  values 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *                               ( in  that  order ) .  Default  'medium' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string        $alt      The  image  alternative ,  or  alt ,  text . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$html  =  apply_filters (  'image_send_to_editor' ,  $html ,  $id ,  $caption ,  $title ,  $align ,  $url ,  $size ,  $alt  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  image  shortcode  with  caption  to  editor 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  @ param  string   $html     The  image  HTML  markup  to  send . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  integer  $id       Image  attachment  ID . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $caption  Image  caption . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $title    Image  title  attribute  ( not  used ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $align    Image  CSS  alignment  property . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $url      Image  source  URL  ( not  used ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $size     Image  size  ( `thumbnail` ,  `medium` ,  `large` ,  `full` ,  or  added  with  `add_image_size()` )  ( not  used ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string   $alt      Image  `alt`  attribute  ( not  used ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string  The  image  HTML  markup  with  caption  shortcode . 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  image_add_caption (  $html ,  $id ,  $caption ,  $title ,  $align ,  $url ,  $size ,  $alt  =  ''  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  caption  text . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Note :  If  the  caption  text  is  empty ,  the  caption  shortcode  will  not  be  appended 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  to  the  image  HTML  when  inserted  into  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Passing  an  empty  value  also  prevents  the  { @ see  'image_add_caption_shortcode' } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  from  being  evaluated  at  the  end  of  image_add_caption () . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  4.1 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $caption  The  original  caption  text . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  int     $id       The  attachment  ID . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$caption  =  apply_filters (  'image_add_caption_text' ,  $caption ,  $id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  whether  to  disable  captions . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Prevents  image  captions  from  being  appended  to  image  HTML  when  inserted  into  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  bool  $bool  Whether  to  disable  appending  captions .  Returning  true  to  the  filter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *                    will  disable  captions .  Default  empty  string . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $caption  )  ||  apply_filters (  'disable_captions' ,  ''  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  $html ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$id  =  (  0  <  ( int )  $id  )  ?  'attachment_'  .  $id  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  preg_match (  '/width=["\']([0-9]+)/' ,  $html ,  $matches  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  $html ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$width  =  $matches [ 1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$caption  =  str_replace (  array (  " \r \n " ,  " \r "  ),  " \n " ,  $caption  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$caption  =  preg_replace_callback (  '/<[a-zA-Z0-9]+(?: [^<>]+>)*/' ,  '_cleanup_image_add_caption' ,  $caption  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Convert any remaining line breaks to <br>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$caption  =  preg_replace (  '/[ \n\t]*\n[ \t]*/' ,  '<br />' ,  $caption  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$html  =  preg_replace (  '/(class=["\'][^\'"]*)align(none|left|right|center)\s?/' ,  '$1' ,  $html  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $align  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$align  =  'none' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$shcode  =  '[caption id="'  .  $id  .  '" align="align'  .  $align  .  '" width="'  .  $width  .  '"]'  .  $html  .  ' '  .  $caption  .  '[/caption]' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  image  HTML  markup  including  the  caption  shortcode . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $shcode  The  image  HTML  markup  with  caption  shortcode . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $html    The  image  HTML  markup . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  apply_filters (  'image_add_caption_shortcode' ,  $shcode ,  $html  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Private  preg_replace  callback  used  in  image_add_caption () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ access  private 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.4 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  _cleanup_image_add_caption (  $matches  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Remove any line breaks from inside the tags.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  preg_replace (  '/[\r\n\t]+/' ,  ' ' ,  $matches [ 0 ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  image  html  to  editor 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $html 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_send_to_editor (  $html  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  win  =  window . dialogArguments  ||  opener  ||  parent  ||  top ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								win . send_to_editor (  < ? php  echo  wp_json_encode (  $html  );  ?>  );
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Save  a  file  submitted  from  a  POST  request  and  create  an  attachment  post  for  it . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $file_id    Index  of  the  `$_FILES`  array  that  the  file  was  sent .  Required . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int     $post_id    The  post  ID  of  a  post  to  attach  the  media  item  to .  Required ,  but  can 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *                           be  set  to  0 ,  creating  a  media  item  that  has  no  relationship  to  a  post . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array   $post_data  Overwrite  some  of  the  attachment .  Optional . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array   $overrides  Override  the  wp_handle_upload ()  behavior .  Optional . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  int | WP_Error  ID  of  the  attachment  or  a  WP_Error  object  on  failure . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_handle_upload (  $file_id ,  $post_id ,  $post_data  =  array (),  $overrides  =  array (  'test_form'  =>  false  )  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$time  =  current_time (  'mysql'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $post  =  get_post (  $post_id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										// The post date doesn't usually matter for pages, so don't backdate this upload.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  'page'  !==  $post -> post_type  &&  substr (  $post -> post_date ,  0 ,  4  )  >  0  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$time  =  $post -> post_date ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$file  =  wp_handle_upload (  $_FILES [  $file_id  ],  $overrides ,  $time  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $file [ 'error' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  new  WP_Error (  'upload_error' ,  $file [ 'error' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$name  =  $_FILES [  $file_id  ][ 'name' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$ext   =  pathinfo (  $name ,  PATHINFO_EXTENSION  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$name  =  wp_basename (  $name ,  " . $ext "  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$url      =  $file [ 'url' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type     =  $file [ 'type' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$file     =  $file [ 'file' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$title    =  sanitize_text_field (  $name  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$content  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$excerpt  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  preg_match (  '#^audio#' ,  $type  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$meta  =  wp_read_audio_metadata (  $file  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $meta [ 'title' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$title  =  $meta [ 'title' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $title  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  !  empty (  $meta [ 'album' ]  )  &&  !  empty (  $meta [ 'artist' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: audio track title, 2: album title, 3: artist name */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  sprintf (  __ (  '"%1$s" from %2$s by %3$s.'  ),  $title ,  $meta [ 'album' ],  $meta [ 'artist' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  elseif  (  !  empty (  $meta [ 'album' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: audio track title, 2: album title */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  sprintf (  __ (  '"%1$s" from %2$s.'  ),  $title ,  $meta [ 'album' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  elseif  (  !  empty (  $meta [ 'artist' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: audio track title, 2: artist name */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  sprintf (  __ (  '"%1$s" by %2$s.'  ),  $title ,  $meta [ 'artist' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: audio track title */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  sprintf (  __ (  '"%s".'  ),  $title  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  elseif  (  !  empty (  $meta [ 'album' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  !  empty (  $meta [ 'artist' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: audio album title, 2: artist name */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  sprintf (  __ (  '%1$s by %2$s.'  ),  $meta [ 'album' ],  $meta [ 'artist' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  $meta [ 'album' ]  .  '.' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  elseif  (  !  empty (  $meta [ 'artist' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$content  .=  $meta [ 'artist' ]  .  '.' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $meta [ 'year' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											/* translators: Audio file track information. %d: Year of audio track release */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$content  .=  ' '  .  sprintf (  __ (  'Released: %d.'  ),  $meta [ 'year' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $meta [ 'track_number' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$track_number  =  explode (  '/' ,  $meta [ 'track_number' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $track_number [ 1 ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: Audio file track information. 1: Audio track number, 2: Total audio tracks */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  ' '  .  sprintf (  __ (  'Track %1$s of %2$s.'  ),  number_format_i18n (  $track_number [ 0 ]  ),  number_format_i18n (  $track_number [ 1 ]  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												/* translators: Audio file track information. %s: Audio track number */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$content  .=  ' '  .  sprintf (  __ (  'Track %s.'  ),  number_format_i18n (  $track_number [ 0 ]  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $meta [ 'genre' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											/* translators: Audio file genre information. %s: Audio genre name */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$content  .=  ' '  .  sprintf (  __ (  'Genre: %s.'  ),  $meta [ 'genre' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Use image exif/iptc data for title and caption defaults if possible.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									}  elseif  (  0  ===  strpos (  $type ,  'image/'  )  &&  $image_meta  =  wp_read_image_metadata (  $file  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  trim (  $image_meta [ 'title' ]  )  &&  !  is_numeric (  sanitize_title (  $image_meta [ 'title' ]  )  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$title  =  $image_meta [ 'title' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  trim (  $image_meta [ 'caption' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$excerpt  =  $image_meta [ 'caption' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Construct the attachment array
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$attachment  =  array_merge ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_mime_type'  =>  $type , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'guid'            =>  $url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_parent'     =>  $post_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_title'      =>  $title , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_content'    =>  $content , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_excerpt'    =>  $excerpt , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$post_data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// This should never be set as it would then overwrite an existing attachment.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									unset (  $attachment [ 'ID' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Save the data
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$id  =  wp_insert_attachment (  $attachment ,  $file ,  $post_id ,  true  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  is_wp_error (  $id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										wp_update_attachment_metadata (  $id ,  wp_generate_attachment_metadata (  $id ,  $file  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Handles  a  side - loaded  file  in  the  same  way  as  an  uploaded  file  is  handled  by  media_handle_upload () . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array   $file_array  Array  similar  to  a  `$_FILES`  upload  array . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int     $post_id     The  post  ID  the  media  is  associated  with . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $desc        Optional .  Description  of  the  side - loaded  file .  Default  null . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array   $post_data   Optional .  Post  data  to  override .  Default  empty  array . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  int | object  The  ID  of  the  attachment  or  a  WP_Error  on  failure . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_handle_sideload (  $file_array ,  $post_id ,  $desc  =  null ,  $post_data  =  array ()  )  {  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$overrides  =  array (  'test_form'  =>  false  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$time  =  current_time (  'mysql'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $post  =  get_post (  $post_id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  substr (  $post -> post_date ,  0 ,  4  )  >  0  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$time  =  $post -> post_date ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$file  =  wp_handle_sideload (  $file_array ,  $overrides ,  $time  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $file [ 'error' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  new  WP_Error (  'upload_error' ,  $file [ 'error' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$url      =  $file [ 'url' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type     =  $file [ 'type' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$file     =  $file [ 'file' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$title    =  preg_replace (  '/\.[^.]+$/' ,  '' ,  wp_basename (  $file  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$content  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Use image exif/iptc data for title and caption defaults if possible.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $image_meta  =  wp_read_image_metadata (  $file  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  trim (  $image_meta [ 'title' ]  )  &&  !  is_numeric (  sanitize_title (  $image_meta [ 'title' ]  )  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$title  =  $image_meta [ 'title' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  trim (  $image_meta [ 'caption' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$content  =  $image_meta [ 'caption' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $desc  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$title  =  $desc ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Construct the attachment array.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$attachment  =  array_merge ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_mime_type'  =>  $type , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'guid'            =>  $url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_parent'     =>  $post_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_title'      =>  $title , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post_content'    =>  $content , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$post_data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// This should never be set as it would then overwrite an existing attachment.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									unset (  $attachment [ 'ID' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Save the attachment metadata
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$id  =  wp_insert_attachment (  $attachment ,  $file ,  $post_id ,  true  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  is_wp_error (  $id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										wp_update_attachment_metadata (  $id ,  wp_generate_attachment_metadata (  $id ,  $file  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  the  iframe  to  display  content  for  the  media  upload  page 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  int  $body_id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string | callable  $content_func 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  wp_iframe (  $content_func  /* ... */  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									_wp_admin_html_begin (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< title >< ? php  bloginfo (  'name'  );  ?>  › <?php _e( 'Uploads' ); ?> — <?php _e( 'WordPress' ); ?></title>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									wp_enqueue_style (  'colors'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Check callback name for 'media'
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  (  is_array (  $content_func  )  &&  !  empty (  $content_func [ 1 ]  )  &&  0  ===  strpos (  ( string )  $content_func [ 1 ],  'media'  )  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									||  (  !  is_array (  $content_func  )  &&  0  ===  strpos (  $content_func ,  'media'  )  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										wp_enqueue_style (  'deprecated-media'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									wp_enqueue_style (  'ie'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								addLoadEvent  =  function ( func ){ if ( typeof  jQuery != " undefined " ) jQuery ( document ) . ready ( func ); else  if ( typeof  wpOnload != 'function' ){ wpOnload = func ;} else { var  oldonload = wpOnload ; wpOnload = function (){ oldonload (); func ();}}};  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  ajaxurl  =  '<?php echo admin_url( ' admin - ajax . php ', ' relative ' ); ?>' ,  pagenow  =  'media-upload-popup' ,  adminpage  =  'media-upload-popup' ,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								isRtl  =  < ? php  echo  ( int )  is_rtl ();  ?> ;
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This action is documented in wp-admin/admin-header.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_enqueue_scripts' ,  'media-upload-popup'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  when  admin  styles  enqueued  for  the  legacy  ( pre - 3.5 . 0 )  media  upload  popup  are  printed . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.9 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_print_styles-media-upload-popup'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This action is documented in wp-admin/admin-header.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_print_styles'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  when  admin  scripts  enqueued  for  the  legacy  ( pre - 3.5 . 0 )  media  upload  popup  are  printed . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.9 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_print_scripts-media-upload-popup'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This action is documented in wp-admin/admin-header.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_print_scripts'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  when  scripts  enqueued  for  the  admin  header  for  the  legacy  ( pre - 3.5 . 0 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  media  upload  popup  are  printed . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.9 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_head-media-upload-popup'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This action is documented in wp-admin/admin-header.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_head'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  is_string (  $content_func  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Fires  in  the  admin  header  for  each  specific  form  tab  in  the  legacy 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  ( pre - 3.5 . 0 )  media  upload  popup . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  T he  dynamic  portion  of  the  hook ,  `$content_func` ,  refers  to  the  form 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  callback  for  the  media  upload  type .  Possible  values  include 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  'media_upload_type_form' ,  'media_upload_type_url_form' ,  and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  'media_upload_library_form' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										do_action (  " admin_head_ { $content_func } "  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$body_id_attr  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $GLOBALS [ 'body_id' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$body_id_attr  =  ' id="'  .  $GLOBALS [ 'body_id' ]  .  '"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ head >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< body < ? php  echo  $body_id_attr ;  ?>  class="wp-core-ui no-js">
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								document . body . className  =  document . body . className . replace ( 'no-js' ,  'js' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$args  =  func_get_args (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$args  =  array_slice (  $args ,  1  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									call_user_func_array (  $content_func ,  $args  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This action is documented in wp-admin/admin-footer.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'admin_print_footer_scripts'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " > if ( typeof  wpOnload == 'function' ) wpOnload (); </ script >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ body >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ html >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  the  media  button  to  the  editor 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  int  $post_ID 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ staticvar  int  $instance 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $editor_id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_buttons (  $editor_id  =  'content'  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									static  $instance  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$instance ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post  =  get_post (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  $post  &&  !  empty (  $GLOBALS [ 'post_ID' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$post  =  $GLOBALS [ 'post_ID' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									wp_enqueue_media ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'post'  =>  $post , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$img  =  '<span class="wp-media-buttons-icon"></span> ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$id_attribute  =  $instance  ===  1  ?  ' id="insert-media-button"'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									printf ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'<button type="button"%s class="button insert-media add_media" data-editor="%s">%s</button>' , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$id_attribute , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										esc_attr (  $editor_id  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$img  .  __ (  'Add Media'  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  legacy  ( pre - 3.5 . 0 )  media  buttons . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Use  { @ see  'media_buttons' }  action  instead . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ deprecated  3.5 . 0  Use  { @ see  'media_buttons' }  action  instead . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $string  Media  buttons  context .  Default  empty . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$legacy_filter  =  apply_filters (  'media_buttons_context' ,  ''  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $legacy_filter  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// #WP22559. Close <a> if a plugin started by closing <a> to open their own <a> tag.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  0  ===  stripos (  trim (  $legacy_filter  ),  '</a>'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$legacy_filter  .=  '</a>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										echo  $legacy_filter ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  int  $post_ID 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int  $post_id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  get_upload_iframe_src (  $type  =  null ,  $post_id  =  null ,  $tab  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									global  $post_ID ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $post_id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$post_id  =  $post_ID ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$upload_iframe_src  =  add_query_arg (  'post_id' ,  ( int )  $post_id ,  admin_url (  'media-upload.php'  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $type  &&  'media'  !=  $type  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$upload_iframe_src  =  add_query_arg (  'type' ,  $type ,  $upload_iframe_src  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $tab  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$upload_iframe_src  =  add_query_arg (  'tab' ,  $tab ,  $upload_iframe_src  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  upload  iframe  source  URL  for  a  specific  media  type . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  The  dynamic  portion  of  the  hook  name ,  `$type` ,  refers  to  the  type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  of  media  uploaded . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.0 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $upload_iframe_src  The  upload  iframe  source  URL  by  type . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$upload_iframe_src  =  apply_filters (  " { $type } _upload_iframe_src " ,  $upload_iframe_src  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									return  add_query_arg (  'TB_iframe' ,  true ,  $upload_iframe_src  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Handles  form  submissions  for  the  legacy  media  uploader . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  mixed  void | object  WP_Error  on  failure 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_form_handler ()  {  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									check_admin_referer (  'media-form'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errors  =  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $_POST [ 'send' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$keys     =  array_keys (  $_POST [ 'send' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$send_id  =  ( int )  reset (  $keys  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $_POST [ 'attachments' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $_POST [ 'attachments' ]  as  $attachment_id  =>  $attachment  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$post  =  $_post  =  get_post (  $attachment_id ,  ARRAY_A  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  !  current_user_can (  'edit_post' ,  $attachment_id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  isset (  $attachment [ 'post_content' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$post [ 'post_content' ]  =  $attachment [ 'post_content' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $attachment [ 'post_title' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$post [ 'post_title' ]  =  $attachment [ 'post_title' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $attachment [ 'post_excerpt' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$post [ 'post_excerpt' ]  =  $attachment [ 'post_excerpt' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $attachment [ 'menu_order' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$post [ 'menu_order' ]  =  $attachment [ 'menu_order' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  isset (  $send_id  )  &&  $attachment_id  ==  $send_id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if  (  isset (  $attachment [ 'post_parent' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$post [ 'post_parent' ]  =  $attachment [ 'post_parent' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  Filters  the  attachment  fields  to  be  saved . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ see  wp_get_attachment_metadata () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  array  $post        An  array  of  post  data . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  array  $attachment  An  array  of  attachment  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$post  =  apply_filters (  'attachment_fields_to_save' ,  $post ,  $attachment  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  isset (  $attachment [ 'image_alt' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$image_alt  =  wp_unslash (  $attachment [ 'image_alt' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if  (  $image_alt  !=  get_post_meta (  $attachment_id ,  '_wp_attachment_image_alt' ,  true  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$image_alt  =  wp_strip_all_tags (  $image_alt ,  true  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													// Update_meta expects slashed.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													update_post_meta (  $attachment_id ,  '_wp_attachment_image_alt' ,  wp_slash (  $image_alt  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  isset (  $post [ 'errors' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$errors [  $attachment_id  ]  =  $post [ 'errors' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												unset (  $post [ 'errors' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  $post  !=  $_post  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												wp_update_post (  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											foreach  (  get_attachment_taxonomies (  $post  )  as  $t  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if  (  isset (  $attachment [  $t  ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													wp_set_object_terms (  $attachment_id ,  array_map (  'trim' ,  preg_split (  '/,+/' ,  $attachment [  $t  ]  )  ),  $t ,  false  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $_POST [ 'insert-gallery' ]  )  ||  isset (  $_POST [ 'update-gallery' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										< script  type = " text/javascript " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  win  =  window . dialogArguments  ||  opener  ||  parent  ||  top ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										win . tb_remove (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ script > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $send_id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$attachment  =  wp_unslash (  $_POST [ 'attachments' ][  $send_id  ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$html  =  isset (  $attachment [ 'post_title' ]  )  ?  $attachment [ 'post_title' ]  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $attachment [ 'url' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$rel  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  strpos (  $attachment [ 'url' ],  'attachment_id'  )  ||  get_attachment_link (  $send_id  )  ==  $attachment [ 'url' ]  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$rel  =  "  rel='attachment wp-att- "  .  esc_attr (  $send_id  )  .  " ' " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$html  =  " <a href=' { $attachment [ 'url' ] } ' $rel > $html </a> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Filters  the  HTML  markup  for  a  media  item  sent  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ see  wp_get_attachment_metadata () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  string  $html        HTML  markup  for  a  media  item  sent  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  int     $send_id     The  first  key  from  the  $_POST [ 'send' ]  data . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  array   $attachment  Array  of  attachment  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$html  =  apply_filters (  'media_send_to_editor' ,  $html ,  $send_id ,  $attachment  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										return  media_send_to_editor (  $html  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $errors ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Handles  the  process  of  uploading  media . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  null | string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_media_upload_handler ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errors  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$id      =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $_POST [ 'html-upload' ]  )  &&  !  empty (  $_FILES  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										check_admin_referer (  'media-form'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										// Upload File button was clicked
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$id  =  media_handle_upload (  'async-upload' ,  $_REQUEST [ 'post_id' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $_FILES  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_wp_error (  $id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$errors [ 'upload_error' ]  =  $id ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$id                      =  false ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $_POST [ 'insertonlybutton' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$src  =  $_POST [ 'src' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $src  )  &&  !  strpos (  $src ,  '://'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$src  =  " http:// $src " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  isset (  $_POST [ 'media_type' ]  )  &&  'image'  !=  $_POST [ 'media_type' ]  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$title  =  esc_html (  wp_unslash (  $_POST [ 'title' ]  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  empty (  $title  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$title  =  esc_html (  wp_basename (  $src  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  $title  &&  $src  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$html  =  " <a href=' "  .  esc_url (  $src  )  .  " '> $title </a> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$type  =  'file' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  (  $ext  =  preg_replace (  '/^.+?\.([^.]+)$/' ,  '$1' ,  $src  )  )  &&  (  $ext_type  =  wp_ext2type (  $ext  )  ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												&&  (  'audio'  ==  $ext_type  ||  'video'  ==  $ext_type  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
													$type  =  $ext_type ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  Filters  the  URL  sent  to  the  editor  for  a  specific  media  type . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  The  dynamic  portion  of  the  hook  name ,  `$type` ,  refers  to  the  type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  of  media  being  sent . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $html   HTML  markup  sent  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $src    Media  source  URL . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $title  Media  title . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$html  =  apply_filters (  " { $type } _send_to_editor_url " ,  $html ,  esc_url_raw (  $src  ),  $title  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$align  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$alt    =  esc_attr (  wp_unslash (  $_POST [ 'alt' ]  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $_POST [ 'align' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$align  =  esc_attr (  wp_unslash (  $_POST [ 'align' ]  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$class  =  "  class='align $align ' " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  !  empty (  $src  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$html  =  " <img src=' "  .  esc_url (  $src  )  .  " ' alt=' $alt ' $class  /> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  Filters  the  image  URL  sent  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ since  2.8 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $html   HTML  markup  sent  to  the  editor  for  an  image . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $src    Image  source  URL . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $alt    Image  alternate ,  or  alt ,  text . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  @ param  string  $align  The  image  alignment .  Default  'alignnone' .  Possible  values  include 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *                       'alignleft' ,  'aligncenter' ,  'alignright' ,  'alignnone' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$html  =  apply_filters (  'image_send_to_editor_url' ,  $html ,  esc_url_raw (  $src  ),  $alt ,  $align  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										return  media_send_to_editor (  $html  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $_POST [ 'save' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$errors [ 'upload_notice' ]  =  __ (  'Saved.'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										wp_enqueue_script (  'admin-gallery'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										return  wp_iframe (  'media_upload_gallery_form' ,  $errors  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  elseif  (  !  empty (  $_POST  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$return  =  media_upload_form_handler (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  is_string (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											return  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_array (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$errors  =  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $_GET [ 'tab' ]  )  &&  $_GET [ 'tab' ]  ==  'type_url'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$type  =  'image' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  isset (  $_GET [ 'type' ]  )  &&  in_array (  $_GET [ 'type' ],  array (  'video' ,  'audio' ,  'file'  )  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$type  =  $_GET [ 'type' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return  wp_iframe (  'media_upload_type_url_form' ,  $type ,  $errors ,  $id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  wp_iframe (  'media_upload_type_form' ,  'image' ,  $errors ,  $id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Downloads  an  image  from  the  specified  URL  and  attaches  it  to  a  post . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  4.2 . 0  Introduced  the  `$return`  parameter . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  4.8 . 0  Introduced  the  'id'  option  within  the  `$return`  parameter . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $file     The  URL  of  the  image  to  download . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int     $post_id  The  post  ID  the  media  is  to  be  associated  with . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $desc     Optional .  Description  of  the  image . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $return   Optional .  Accepts  'html'  ( image  tag  html )  or  'src'  ( URL ),  or  'id'  ( attachment  ID ) .  Default  'html' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string | WP_Error  Populated  HTML  img  tag  on  success ,  WP_Error  object  otherwise . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_sideload_image (  $file ,  $post_id ,  $desc  =  null ,  $return  =  'html'  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $file  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Set variables for storage, fix file filename for query strings.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										preg_match (  '/[^\?]+\.(jpe?g|jpe|gif|png)\b/i' ,  $file ,  $matches  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  $matches  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  new  WP_Error (  'image_sideload_failed' ,  __ (  'Invalid image URL'  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$file_array          =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$file_array [ 'name' ]  =  wp_basename (  $matches [ 0 ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Download file to temp location.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$file_array [ 'tmp_name' ]  =  download_url (  $file  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// If error storing temporarily, return the error.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_wp_error (  $file_array [ 'tmp_name' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  $file_array [ 'tmp_name' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Do the validation and storage stuff.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$id  =  media_handle_sideload (  $file_array ,  $post_id ,  $desc  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// If error storing permanently, unlink.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_wp_error (  $id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											@ unlink (  $file_array [ 'tmp_name' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  $id ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											// If attachment id was requested, return it early.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										}  elseif  (  $return  ===  'id'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$src  =  wp_get_attachment_url (  $id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Finally, check to make sure the file has been saved, then return the HTML.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $src  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $return  ===  'src'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  $src ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$alt   =  isset (  $desc  )  ?  esc_attr (  $desc  )  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$html  =  " <img src=' $src ' alt=' $alt ' /> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  new  WP_Error (  'image_sideload_failed'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  legacy  media  uploader  form  in  an  iframe . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string | null 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_gallery ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errors  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $_POST  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$return  =  media_upload_form_handler (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  is_string (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											return  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_array (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$errors  =  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									wp_enqueue_script (  'admin-gallery'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									return  wp_iframe (  'media_upload_gallery_form' ,  $errors  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  legacy  media  library  form  in  an  iframe . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string | null 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_library ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errors  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $_POST  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$return  =  media_upload_form_handler (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  is_string (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											return  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  is_array (  $return  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$errors  =  $return ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  wp_iframe (  'media_upload_library_form' ,  $errors  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  HTML  for  the  image  alignment  radio  buttons  with  the  specified  one  checked . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $checked 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  image_align_input_fields (  $post ,  $checked  =  ''  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $checked  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$checked  =  get_user_setting (  'align' ,  'none'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$alignments  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'none'    =>  __ (  'None'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'left'    =>  __ (  'Left'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'center'  =>  __ (  'Center'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'right'   =>  __ (  'Right'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  array_key_exists (  ( string )  $checked ,  $alignments  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$checked  =  'none' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$out  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $alignments  as  $name  =>  $label  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$name   =  esc_attr (  $name  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$out []  =  " <input type='radio' name='attachments[ { $post -> ID } ][align]' id='image-align- { $name } - { $post -> ID } ' value=' $name ' "  . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											(  $checked  ==  $name  ?  "  checked='checked' "  :  ''  )  . 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											"  /><label for='image-align- { $name } - { $post -> ID } ' class='align image-align- { $name } -label'> $label </label> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									return  join (  " \n " ,  $out  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  HTML  for  the  size  radio  buttons  with  the  specified  one  checked . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  bool | string  $check 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  image_size_input_fields (  $post ,  $check  =  ''  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  names  and  labels  of  the  default  image  sizes . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array  $size_names  Array  of  image  sizes  and  their  names .  Default  values 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *                           include  'Thumbnail' ,  'Medium' ,  'Large' ,  'Full Size' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$size_names  =  apply_filters ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'image_size_names_choose' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'thumbnail'  =>  __ (  'Thumbnail'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'medium'     =>  __ (  'Medium'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'large'      =>  __ (  'Large'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'full'       =>  __ (  'Full Size'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $check  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$check  =  get_user_setting (  'imgsize' ,  'medium'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$out  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $size_names  as  $size  =>  $label  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$downsize  =  image_downsize (  $post -> ID ,  $size  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$checked   =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Is this size selectable?
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$enabled  =  (  $downsize [ 3 ]  ||  'full'  ==  $size  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$css_id   =  " image-size- { $size } - { $post -> ID } " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// If this size is the default but that's not available, don't select it.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $size  ==  $check  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  $enabled  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$checked  =  "  checked='checked' " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$check  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  elseif  (  !  $check  &&  $enabled  &&  'thumbnail'  !=  $size  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											/* 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  If  $check  is  not  enabled ,  default  to  the  first  available  size 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 *  that ' s  bigger  than  a  thumbnail . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$check    =  $size ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$checked  =  "  checked='checked' " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$html  =  " <div class='image-size-item'><input type='radio'  "  .  disabled (  $enabled ,  false ,  false  )  .  " name='attachments[ $post->ID ][image-size]' id=' { $css_id } ' value=' { $size } ' $checked  /> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$html  .=  " <label for=' { $css_id } '> $label </label> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Only show the dimensions if that choice is available.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $enabled  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$html  .=  "  <label for=' { $css_id } ' class='help'> "  .  sprintf (  '(%d × %d)' ,  $downsize [ 1 ],  $downsize [ 2 ]  )  .  '</label>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$html  .=  '</div>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$out []  =  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'label'  =>  __ (  'Size'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'input'  =>  'html' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'html'   =>  join (  " \n " ,  $out  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  HTML  for  the  Link  URL  buttons  with  the  default  link  type  as  specified . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $url_type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  image_link_input_fields (  $post ,  $url_type  =  ''  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$file  =  wp_get_attachment_url (  $post -> ID  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$link  =  get_attachment_link (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  empty (  $url_type  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$url_type  =  get_user_setting (  'urlbutton' ,  'post'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$url  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $url_type  ==  'file'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$url  =  $file ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									}  elseif  (  $url_type  ==  'post'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$url  =  $link ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  " 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< input  type = 'text'  class = 'text urlfield'  name = 'attachments[$post->ID][url]'  value = '" . esc_attr( $url ) . "'  />< br  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< button  type = 'button'  class = 'button urlnone'  data - link - url = '' > "  . __( 'None' ) .  " </ button > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< button  type = 'button'  class = 'button urlfile'  data - link - url = '" . esc_attr( $file ) . "' > "  . __( 'File URL' ) .  " </ button > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< button  type = 'button'  class = 'button urlpost'  data - link - url = '" . esc_attr( $link ) . "' > "  . __( 'Attachment Post URL' ) . '</button>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								' ;  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Output  a  textarea  element  for  inputting  an  attachment  caption . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.4 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $edit_post  Attachment  WP_Post  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string  HTML  markup  for  the  textarea  element . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  wp_caption_input_textarea (  $edit_post  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									// Post data is already escaped.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$name  =  " attachments[ { $edit_post -> ID } ][post_excerpt] " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  '<textarea name="'  .  $name  .  '" id="'  .  $name  .  '">'  .  $edit_post -> post_excerpt  .  '</textarea>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  image  attachment  fields  to  edit  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $form_fields 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  object  $post 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  image_attachment_fields_to_edit (  $form_fields ,  $post  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									return  $form_fields ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  single  non - image  attachment  fields  to  edit  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array    $form_fields  An  array  of  attachment  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post         The  WP_Post  attachment  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array  Filtered  attachment  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_single_attachment_fields_to_edit (  $form_fields ,  $post  )  {  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									unset (  $form_fields [ 'url' ],  $form_fields [ 'align' ],  $form_fields [ 'image-size' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									return  $form_fields ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  post  non - image  attachment  fields  to  edito  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.8 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array    $form_fields  An  array  of  attachment  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post         The  WP_Post  attachment  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array  Filtered  attachment  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_post_single_attachment_fields_to_edit (  $form_fields ,  $post  )  {  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									unset (  $form_fields [ 'image_url' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									return  $form_fields ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Filters  input  from  media_upload_form_handler ()  and  assigns  a  default 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  post_title  from  the  file  name  if  none  supplied . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Illustrates  the  use  of  the  { @ see  'attachment_fields_to_save' }  filter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  which  can  be  used  to  add  default  values  to  any  field  before  saving  to  DB . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $post        The  WP_Post  attachment  object  converted  to  an  array . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $attachment  An  array  of  attachment  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array  Filtered  attachment  post  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  image_attachment_fields_to_save (  $post ,  $attachment  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  substr (  $post [ 'post_mime_type' ],  0 ,  5  )  ==  'image'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  strlen (  trim (  $post [ 'post_title' ]  )  )  ==  0  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$attachment_url                            =  (  isset (  $post [ 'attachment_url' ]  )  )  ?  $post [ 'attachment_url' ]  :  $post [ 'guid' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$post [ 'post_title' ]                        =  preg_replace (  '/\.\w+$/' ,  '' ,  wp_basename (  $attachment_url  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$post [ 'errors' ][ 'post_title' ][ 'errors' ][]  =  __ (  'Empty Title filled from filename.'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $post ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  media  element  HTML  to  send  to  the  editor . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $html 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  integer  $attachment_id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $attachment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  image_media_send_to_editor (  $html ,  $attachment_id ,  $attachment  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post  =  get_post (  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  substr (  $post -> post_mime_type ,  0 ,  5  )  ==  'image'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$url    =  $attachment [ 'url' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$align  =  !  empty (  $attachment [ 'align' ]  )  ?  $attachment [ 'align' ]  :  'none' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$size   =  !  empty (  $attachment [ 'image-size' ]  )  ?  $attachment [ 'image-size' ]  :  'medium' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$alt    =  !  empty (  $attachment [ 'image_alt' ]  )  ?  $attachment [ 'image_alt' ]  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$rel    =  (  strpos (  $url ,  'attachment_id'  )  ||  $url  ===  get_attachment_link (  $attachment_id  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										return  get_image_send_to_editor (  $attachment_id ,  $attachment [ 'post_excerpt' ],  $attachment [ 'post_title' ],  $align ,  $url ,  $rel ,  $size ,  $alt  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieves  the  attachment  fields  to  edit  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  get_attachment_fields_to_edit (  $post ,  $errors  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  is_int (  $post  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$post  =  get_post (  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  is_array (  $post  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$post  =  new  WP_Post (  ( object )  $post  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$image_url  =  wp_get_attachment_url (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$edit_post  =  sanitize_post (  $post ,  'edit'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_fields  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'post_title'    =>  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Title'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'value'  =>  $edit_post -> post_title , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'image_alt'     =>  array (), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										'post_excerpt'  =>  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Caption'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'input'  =>  'html' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'html'   =>  wp_caption_input_textarea (  $edit_post  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'post_content'  =>  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Description'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'value'  =>  $edit_post -> post_content , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'input'  =>  'textarea' , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'url'           =>  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Link URL'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'input'  =>  'html' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'html'   =>  image_link_input_fields (  $post ,  get_option (  'image_default_link_type'  )  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'helps'  =>  __ (  'Enter a link URL or click above for presets.'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'menu_order'    =>  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Order'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'value'  =>  $edit_post -> menu_order , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'image_url'     =>  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'label'  =>  __ (  'File URL'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'input'  =>  'html' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'html'   =>  " <input type='text' class='text urlfield' readonly='readonly' name='attachments[ $post->ID ][url]' value=' "  .  esc_attr (  $image_url  )  .  " ' /><br /> " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'value'  =>  wp_get_attachment_url (  $post -> ID  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'helps'  =>  __ (  'Location of the uploaded file.'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									foreach  (  get_attachment_taxonomies (  $post  )  as  $taxonomy  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$t  =  ( array )  get_taxonomy (  $taxonomy  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  $t [ 'public' ]  ||  !  $t [ 'show_ui' ]  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  empty (  $t [ 'label' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$t [ 'label' ]  =  $taxonomy ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  empty (  $t [ 'args' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$t [ 'args' ]  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$terms  =  get_object_term_cache (  $post -> ID ,  $taxonomy  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  false  ===  $terms  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$terms  =  wp_get_object_terms (  $post -> ID ,  $taxonomy ,  $t [ 'args' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$values  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										foreach  (  $terms  as  $term  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$values []  =  $term -> slug ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$t [ 'value' ]  =  join (  ', ' ,  $values  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$form_fields [  $taxonomy  ]  =  $t ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Merge default fields with their errors, so any key passed with the error (e.g. 'error', 'helps', 'value') will replace the default
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// The recursive merge is easily traversed with array casting: foreach ( (array) $things as $thing )
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_fields  =  array_merge_recursive (  $form_fields ,  ( array )  $errors  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// This was formerly in image_attachment_fields_to_edit().
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  substr (  $post -> post_mime_type ,  0 ,  5  )  ==  'image'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$alt  =  get_post_meta (  $post -> ID ,  '_wp_attachment_image_alt' ,  true  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  empty (  $alt  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$alt  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'post_title' ][ 'required' ]  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'image_alt' ]  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'value'  =>  $alt , 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Alternative Text'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'helps'  =>  __ (  'Alt text for the image, e.g. “The Mona Lisa”'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'align' ]  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'label'  =>  __ (  'Alignment'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											'input'  =>  'html' , 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'html'   =>  image_align_input_fields (  $post ,  get_option (  'image_default_align'  )  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$form_fields [ 'image-size' ]  =  image_size_input_fields (  $post ,  get_option (  'image_default_size' ,  'medium'  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $form_fields [ 'image_alt' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  attachment  fields  to  edit . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array    $form_fields  An  array  of  attachment  form  fields . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  WP_Post  $post         The  WP_Post  attachment  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_fields  =  apply_filters (  'attachment_fields_to_edit' ,  $form_fields ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $form_fields ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  HTML  for  media  items  of  post  gallery . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  The  HTML  markup  retrieved  will  be  created  for  the  progress  of  SWF  Upload 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  component .  Will  also  create  link  for  showing  and  hiding  the  form  to  modify 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  the  image  attachment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  WP_Query  $wp_the_query 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int  $post_id  Optional .  Post  ID . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $errors  Errors  for  attachment ,  if  any . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  get_media_items (  $post_id ,  $errors  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$attachments  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $post_id  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$post  =  get_post (  $post_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $post  &&  $post -> post_type  ==  'attachment'  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$attachments  =  array (  $post -> ID  =>  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$attachments  =  get_children ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'post_parent'  =>  $post_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'post_type'    =>  'attachment' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'orderby'      =>  'menu_order ASC, ID' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'order'        =>  'DESC' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  is_array (  $GLOBALS [ 'wp_the_query' ] -> posts  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $GLOBALS [ 'wp_the_query' ] -> posts  as  $attachment  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$attachments [  $attachment -> ID  ]  =  $attachment ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$output  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  ( array )  $attachments  as  $id  =>  $attachment  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  $attachment -> post_status  ==  'trash'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $item  =  get_media_item (  $id ,  array (  'errors'  =>  isset (  $errors [  $id  ]  )  ?  $errors [  $id  ]  :  null  )  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$output  .=  " \n <div id='media-item- $id ' class='media-item child-of- $attachment->post_parent  preloaded'><div class='progress hidden'><div class='bar'></div></div><div id='media-upload-error- $id ' class='hidden'></div><div class='filename hidden'></div> $item\n </div> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $output ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  HTML  form  for  modifying  the  image  attachment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $redir_tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int  $attachment_id  Attachment  ID  for  modification . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string | array  $args  Optional .  Override  defaults . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string  HTML  form  for  attachment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  get_media_item (  $attachment_id ,  $args  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									global  $redir_tab ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  (  $attachment_id  =  intval (  $attachment_id  )  )  &&  $thumb_url  =  wp_get_attachment_image_src (  $attachment_id ,  'thumbnail' ,  true  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$thumb_url  =  $thumb_url [ 0 ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$thumb_url  =  false ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$post             =  get_post (  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$current_post_id  =  !  empty (  $_GET [ 'post_id' ]  )  ?  ( int )  $_GET [ 'post_id' ]  :  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$default_args  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'errors'      =>  null , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'send'        =>  $current_post_id  ?  post_type_supports (  get_post_type (  $current_post_id  ),  'editor'  )  :  true , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'delete'      =>  true , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'toggle'      =>  true , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'show_title'  =>  true , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$args          =  wp_parse_args (  $args ,  $default_args  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  arguments  used  to  retrieve  an  image  for  the  edit  image  form . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.1 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ see  get_media_item 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array  $args  An  array  of  arguments . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$r  =  apply_filters (  'get_media_item_args' ,  $args  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$toggle_on   =  __ (  'Show'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$toggle_off  =  __ (  'Hide'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$file      =  get_attached_file (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$filename  =  esc_html (  wp_basename (  $file  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$title     =  esc_attr (  $post -> post_title  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_mime_types  =  get_post_mime_types (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$keys             =  array_keys (  wp_match_mime_types (  array_keys (  $post_mime_types  ),  $post -> post_mime_type  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type             =  reset (  $keys  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type_html        =  " <input type='hidden' id='type-of- $attachment_id ' value=' "  .  esc_attr (  $type  )  .  " ' /> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_fields  =  get_attachment_fields_to_edit (  $post ,  $r [ 'errors' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $r [ 'toggle' ]  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$class         =  empty (  $r [ 'errors' ]  )  ?  'startclosed'  :  'startopen' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$toggle_links  =  " 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< a  class = 'toggle describe-toggle-on'  href = '#' > $toggle_on </ a > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< a  class = 'toggle describe-toggle-off'  href = '#' > $toggle_off </ a > " ;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$class         =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$toggle_links  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$display_title  =  (  !  empty (  $title  )  )  ?  $title  :  $filename ;  // $title shouldn't ever be empty, but just in case
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$display_title  =  $r [ 'show_title' ]  ?  " <div class='filename new'><span class='title'> "  .  wp_html_excerpt (  $display_title ,  60 ,  '…'  )  .  '</span></div>'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$gallery  =  (  (  isset (  $_REQUEST [ 'tab' ]  )  &&  'gallery'  ==  $_REQUEST [ 'tab' ]  )  ||  (  isset (  $redir_tab  )  &&  'gallery'  ==  $redir_tab  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$order    =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $form_fields  as  $key  =>  $val  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  'menu_order'  ==  $key  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  (  $gallery  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$order  =  " <div class='menu_order'> <input class='menu_order_input' type='text' id='attachments[ $attachment_id ][menu_order]' name='attachments[ $attachment_id ][menu_order]' value=' "  .  esc_attr (  $val [ 'value' ]  )  .  " ' /></div> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$order  =  " <input type='hidden' name='attachments[ $attachment_id ][menu_order]' value=' "  .  esc_attr (  $val [ 'value' ]  )  .  " ' /> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											unset (  $form_fields [ 'menu_order' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$media_dims  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$meta        =  wp_get_attachment_metadata (  $post -> ID  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $meta [ 'width' ],  $meta [ 'height' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$media_dims  .=  " <span id='media-dims- $post->ID '> { $meta [ 'width' ] }  ×  { $meta [ 'height' ] } </span>  " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  media  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string   $media_dims  The  HTML  markup  containing  the  media  dimensions . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  WP_Post  $post        The  WP_Post  attachment  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$media_dims  =  apply_filters (  'media_meta' ,  $media_dims ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$image_edit_button  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  wp_attachment_is_image (  $post -> ID  )  &&  wp_image_editor_supports (  array (  'mime_type'  =>  $post -> post_mime_type  )  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$nonce              =  wp_create_nonce (  " image_editor- $post->ID "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$image_edit_button  =  " <input type='button' id='imgedit-open-btn- $post->ID ' onclick='imageEdit.open(  $post->ID ,  \" $nonce\ "  ) ' class=' button ' value=' "  . esc_attr__( 'Edit Image' ) .  " ' /> <span class=' spinner ' ></ span > " ;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$attachment_url  =  get_permalink (  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$item  =  " 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type_html 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$toggle_links 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$order 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$display_title 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< table  class = 'slidetoggle describe $class' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< thead  class = 'media-item-info'  id = 'media-head-$post->ID' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td  class = 'A1B1'  id = 'thumbnail-head-$post->ID' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p >< a  href = '$attachment_url'  target = '_blank' >< img  class = 'thumbnail'  src = '$thumb_url'  alt = ''  /></ a ></ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p > $image_edit_button </ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< p >< strong > "  . __( 'File name:' ) .  " </ strong >  $filename </ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p >< strong > "  . __( 'File type:' ) .  " </ strong >  $post -> post_mime_type </ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p >< strong > "  . __( 'Upload date:' ) . '</strong> ' . mysql2date( __( 'F j, Y' ),  $post->post_date  ) . '</p>';
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $media_dims  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  '<p><strong>'  .  __ (  'Dimensions:'  )  .  " </strong>  $media_dims </p> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$item  .=  " </td></tr> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$item  .=  " 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ thead > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tbody > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr >< td  colspan = '2'  class = 'imgedit-response'  id = 'imgedit-response-$post->ID' ></ td ></ tr > \n 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr >< td  style = 'display:none'  colspan = '2'  class = 'image-editor'  id = 'image-editor-$post->ID' ></ td ></ tr > \n 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr >< td  colspan = '2' >< p  class = 'media-types media-types-required-info' > "  . sprintf( __( 'Required fields are marked %s' ), '<span class= " required " >*</span>' ) .  " </ p ></ td ></ tr > \n " ;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$defaults  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'input'       =>  'text' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'required'    =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'value'       =>  '' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'extra_rows'  =>  array (), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $r [ 'send' ]  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$r [ 'send' ]  =  get_submit_button (  __ (  'Insert into Post'  ),  '' ,  " send[ $attachment_id ] " ,  false  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$delete  =  empty (  $r [ 'delete' ]  )  ?  ''  :  $r [ 'delete' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $delete  &&  current_user_can (  'delete_post' ,  $attachment_id  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  EMPTY_TRASH_DAYS  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$delete  =  " <a href=' "  .  wp_nonce_url (  " post.php?action=delete&post= $attachment_id " ,  'delete-post_'  .  $attachment_id  )  .  " ' id='del[ $attachment_id ]' class='delete-permanently'> "  .  __ (  'Delete Permanently'  )  .  '</a>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										}  elseif  (  !  MEDIA_TRASH  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$delete  =  " <a href='#' class='del-link' onclick= \" document.getElementById('del_attachment_ $attachment_id ').style.display='block';return false; \" > "  .  __ (  'Delete'  )  .  " </a>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< div  id = 'del_attachment_$attachment_id'  class = 'del-attachment'  style = 'display:none;' > "  .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: %s: file name */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'<p>'  .  sprintf (  __ (  'You are about to delete %s.'  ),  '<strong>'  .  $filename  .  '</strong>'  )  .  " </p>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< a  href = '" . wp_nonce_url( "post.php?action=delete&post=$attachment_id", ' delete - post_ ' . $attachment_id ) . "'  id = 'del[$attachment_id]'  class = 'button' > "  . __( 'Continue' ) .  " </ a > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< a  href = '#'  class = 'button'  onclick = \ " this.parentNode.style.display='none';return false; \" > "  .  __ (  'Cancel'  )  .  ' </ a > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												</ div > ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$delete  =  " <a href=' "  .  wp_nonce_url (  " post.php?action=trash&post= $attachment_id " ,  'trash-post_'  .  $attachment_id  )  .  " ' id='del[ $attachment_id ]' class='delete'> "  .  __ (  'Move to Trash'  )  .  " </a>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< a  href = '" . wp_nonce_url( "post.php?action=untrash&post=$attachment_id", ' untrash - post_ ' . $attachment_id ) . "'  id = 'undo[$attachment_id]'  class = 'undo hidden' > "  . __( 'Undo' ) . '</a>';
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$delete  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$thumbnail        =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$calling_post_id  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $_GET [ 'post_id' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$calling_post_id  =  absint (  $_GET [ 'post_id' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  elseif  (  isset (  $_POST  )  &&  count (  $_POST  )  )  { // Like for async-upload where $_GET['post_id'] isn't set
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$calling_post_id  =  $post -> post_parent ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  'image'  ==  $type  &&  $calling_post_id  &&  current_theme_supports (  'post-thumbnails' ,  get_post_type (  $calling_post_id  )  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										&&  post_type_supports (  get_post_type (  $calling_post_id  ),  'thumbnail'  )  &&  get_post_thumbnail_id (  $calling_post_id  )  !=  $attachment_id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$calling_post              =  get_post (  $calling_post_id  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$calling_post_type_object  =  get_post_type_object (  $calling_post -> post_type  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$ajax_nonce  =  wp_create_nonce (  " set_post_thumbnail- $calling_post_id "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$thumbnail   =  " <a class='wp-post-thumbnail' id='wp-post-thumbnail- "  .  $attachment_id  .  " ' href='#' onclick='WPSetAsThumbnail( \" $attachment_id\ " ,  \ " $ajax_nonce\ " ); return  false ; '>" . esc_html( $calling_post_type_object->labels->use_featured_image ) . ' </ a > ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  (  $r [ 'send' ]  ||  $thumbnail  ||  $delete  )  &&  !  isset (  $form_fields [ 'buttons' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'buttons' ]  =  array (  'tr'  =>  " \t \t <tr class='submit'><td></td><td class='savesend'> "  .  $r [ 'send' ]  .  "   $thumbnail   $delete </td></tr> \n "  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$hidden_fields  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $form_fields  as  $id  =>  $field  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  $id [ 0 ]  ==  '_'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'tr' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  $field [ 'tr' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$field  =  array_merge (  $defaults ,  $field  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$name   =  " attachments[ $attachment_id ][ $id ] " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $field [ 'input' ]  ==  'hidden'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$hidden_fields [  $name  ]  =  $field [ 'value' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$required       =  $field [ 'required' ]  ?  '<span class="required">*</span>'  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$required_attr  =  $field [ 'required' ]  ?  ' required'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$class          =  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$class         .=  $field [ 'required' ]  ?  ' form-required'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t \t <tr class=' $class '> \n \t \t \t <th scope='row' class='label'><label for=' $name '><span class='alignleft'> { $field [ 'label' ] } { $required } </span><br class='clear' /></label></th> \n \t \t \t <td class='field'> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [  $field [ 'input' ]  ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  $field [  $field [ 'input' ]  ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										}  elseif  (  $field [ 'input' ]  ==  'textarea'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											if  (  'post_content'  ==  $id  &&  user_can_richedit ()  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// Sanitize_post() skips the post_content when user_can_richedit.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$field [ 'value' ]  =  htmlspecialchars (  $field [ 'value' ],  ENT_QUOTES  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Post_excerpt is already escaped by sanitize_post() in get_attachment_fields_to_edit().
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$item  .=  " <textarea id=' $name ' name=' $name ' { $required_attr } > "  .  $field [ 'value' ]  .  '</textarea>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$item  .=  " <input type='text' class='text' id=' $name ' name=' $name ' value=' "  .  esc_attr (  $field [ 'value' ]  )  .  " ' { $required_attr }  /> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'helps' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  " <p class='help'> "  .  join (  " </p> \n <p class='help'> " ,  array_unique (  ( array )  $field [ 'helps' ]  )  )  .  '</p>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  .=  " </td> \n \t \t </tr> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$extra_rows  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'errors' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  array_unique (  ( array )  $field [ 'errors' ]  )  as  $error  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$extra_rows [ 'error' ][]  =  $error ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'extra_rows' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $field [ 'extra_rows' ]  as  $class  =>  $rows  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												foreach  (  ( array )  $rows  as  $html  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$extra_rows [  $class  ][]  =  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										foreach  (  $extra_rows  as  $class  =>  $rows  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $rows  as  $html  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$item  .=  " \t \t <tr><td></td><td class=' $class '> $html </td></tr> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $form_fields [ '_final' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t \t <tr class='final'><td colspan='2'> { $form_fields [ '_final' ] } </td></tr> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$item  .=  " \t </tbody> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$item  .=  " \t </table> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									foreach  (  $hidden_fields  as  $name  =>  $value  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t <input type='hidden' name=' $name ' id=' $name ' value=' "  .  esc_attr (  $value  )  .  " ' /> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $post -> post_parent  <  1  &&  isset (  $_REQUEST [ 'post_id' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$parent       =  ( int )  $_REQUEST [ 'post_id' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$parent_name  =  " attachments[ $attachment_id ][post_parent] " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$item        .=  " \t <input type='hidden' name=' $parent_name ' id=' $parent_name ' value=' $parent ' /> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $item ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int    $attachment_id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $args 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  get_compat_media_markup (  $attachment_id ,  $args  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post  =  get_post (  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$default_args  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'errors'    =>  null , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										'in_modal'  =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$user_can_edit  =  current_user_can (  'edit_post' ,  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$args  =  wp_parse_args (  $args ,  $default_args  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$args  =  apply_filters (  'get_media_item_args' ,  $args  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_fields  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $args [ 'in_modal' ]  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										foreach  (  get_attachment_taxonomies (  $post  )  as  $taxonomy  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$t  =  ( array )  get_taxonomy (  $taxonomy  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  !  $t [ 'public' ]  ||  !  $t [ 'show_ui' ]  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  empty (  $t [ 'label' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$t [ 'label' ]  =  $taxonomy ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  empty (  $t [ 'args' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$t [ 'args' ]  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$terms  =  get_object_term_cache (  $post -> ID ,  $taxonomy  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  false  ===  $terms  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$terms  =  wp_get_object_terms (  $post -> ID ,  $taxonomy ,  $t [ 'args' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$values  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											foreach  (  $terms  as  $term  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$values []  =  $term -> slug ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$t [ 'value' ]     =  join (  ', ' ,  $values  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$t [ 'taxonomy' ]  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$form_fields [  $taxonomy  ]  =  $t ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Merge default fields with their errors, so any key passed with the error (e.g. 'error', 'helps', 'value') will replace the default
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// The recursive merge is easily traversed with array casting: foreach ( (array) $things as $thing )
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_fields  =  array_merge_recursive (  $form_fields ,  ( array )  $args [ 'errors' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_fields  =  apply_filters (  'attachment_fields_to_edit' ,  $form_fields ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									unset ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'image-size' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'align' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'image_alt' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'post_title' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'post_excerpt' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'post_content' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'url' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'menu_order' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$form_fields [ 'image_url' ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$media_meta  =  apply_filters (  'media_meta' ,  '' ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$defaults  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'input'          =>  'text' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'required'       =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'value'          =>  '' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'extra_rows'     =>  array (), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'show_in_edit'   =>  true , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'show_in_modal'  =>  true , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$hidden_fields  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$item  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $form_fields  as  $id  =>  $field  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  $id [ 0 ]  ==  '_'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$name     =  " attachments[ $attachment_id ][ $id ] " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$id_attr  =  " attachments- $attachment_id - $id " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'tr' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  $field [ 'tr' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$field  =  array_merge (  $defaults ,  $field  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  (  !  $field [ 'show_in_edit' ]  &&  !  $args [ 'in_modal' ]  )  ||  (  !  $field [ 'show_in_modal' ]  &&  $args [ 'in_modal' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $field [ 'input' ]  ==  'hidden'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$hidden_fields [  $name  ]  =  $field [ 'value' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$readonly       =  !  $user_can_edit  &&  !  empty (  $field [ 'taxonomy' ]  )  ?  "  readonly='readonly'  "  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$required       =  $field [ 'required' ]  ?  '<span class="required">*</span>'  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$required_attr  =  $field [ 'required' ]  ?  ' required'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$class          =  'compat-field-'  .  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$class         .=  $field [ 'required' ]  ?  ' form-required'  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t \t <tr class=' $class '> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t \t \t <th scope='row' class='label'><label for=' $id_attr '><span class='alignleft'> { $field [ 'label' ] } </span> $required <br class='clear' /></label> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  " </th> \n \t \t \t <td class='field'> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [  $field [ 'input' ]  ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  $field [  $field [ 'input' ]  ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										}  elseif  (  $field [ 'input' ]  ==  'textarea'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											if  (  'post_content'  ==  $id  &&  user_can_richedit ()  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// sanitize_post() skips the post_content when user_can_richedit.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$field [ 'value' ]  =  htmlspecialchars (  $field [ 'value' ],  ENT_QUOTES  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$item  .=  " <textarea id=' $id_attr ' name=' $name ' { $required_attr } > "  .  $field [ 'value' ]  .  '</textarea>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$item  .=  " <input type='text' class='text' id=' $id_attr ' name=' $name ' value=' "  .  esc_attr (  $field [ 'value' ]  )  .  " '  $readonly { $required_attr }  /> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'helps' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$item  .=  " <p class='help'> "  .  join (  " </p> \n <p class='help'> " ,  array_unique (  ( array )  $field [ 'helps' ]  )  )  .  '</p>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  .=  " </td> \n \t \t </tr> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$extra_rows  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'errors' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  array_unique (  ( array )  $field [ 'errors' ]  )  as  $error  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$extra_rows [ 'error' ][]  =  $error ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $field [ 'extra_rows' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $field [ 'extra_rows' ]  as  $class  =>  $rows  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												foreach  (  ( array )  $rows  as  $html  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$extra_rows [  $class  ][]  =  $html ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										foreach  (  $extra_rows  as  $class  =>  $rows  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $rows  as  $html  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$item  .=  " \t \t <tr><td></td><td class=' $class '> $html </td></tr> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $form_fields [ '_final' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  .=  " \t \t <tr class='final'><td colspan='2'> { $form_fields [ '_final' ] } </td></tr> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $item  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  =  '<p class="media-types media-types-required-info">'  . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											sprintf (  __ (  'Required fields are marked %s'  ),  '<span class="required">*</span>'  )  .  ' </ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< table  class = " compat-attachment-fields " > ' . $item . ' </ table > ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $hidden_fields  as  $hidden_field  =>  $value  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$item  .=  '<input type="hidden" name="'  .  esc_attr (  $hidden_field  )  .  '" value="'  .  esc_attr (  $value  )  .  '" />'  .  " \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $item  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$item  =  '<input type="hidden" name="attachments['  .  $attachment_id  .  '][menu_order]" value="'  .  esc_attr (  $post -> menu_order  )  .  '" />'  .  $item ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'item'  =>  $item , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'meta'  =>  $media_meta , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  header . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_header ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_id  =  isset (  $_REQUEST [ 'post_id' ]  )  ?  intval (  $_REQUEST [ 'post_id' ]  )  :  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<script type="text/javascript">post_id = '  .  $post_id  .  ';</script>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $_GET [ 'chromeless' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  '<div id="media-upload-header">' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										the_media_upload_tabs (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  '</div>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  form . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  bool    $is_IE 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  bool    $is_opera 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_form (  $errors  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									global  $type ,  $tab ,  $is_IE ,  $is_opera ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  _device_can_upload ()  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										echo  '<p>'  .  sprintf (  __ (  'The web browser on your device cannot be used to upload files. You may be able to use the <a href="%s">native app for your device</a> instead.'  ),  'https://apps.wordpress.org/'  )  .  '</p>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$upload_action_url  =  admin_url (  'async-upload.php'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_id            =  isset (  $_REQUEST [ 'post_id' ]  )  ?  intval (  $_REQUEST [ 'post_id' ]  )  :  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_type              =  isset (  $type  )  ?  $type  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_tab               =  isset (  $tab  )  ?  $tab  :  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$max_upload_size  =  wp_max_upload_size (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  $max_upload_size  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$max_upload_size  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< div  id = " media-upload-notice " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $errors [ 'upload_notice' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										echo  $errors [ 'upload_notice' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " media-upload-error " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $errors [ 'upload_error' ]  )  &&  is_wp_error (  $errors [ 'upload_error' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										echo  $errors [ 'upload_error' ] -> get_error_message (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  is_multisite ()  &&  !  is_upload_space_available ()  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Fires  when  an  upload  will  exceed  the  defined  upload  space  quota  for  a  network  site . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  3.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										do_action (  'upload_ui_over_quota'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									 *  Fires  just  before  the  legacy  ( pre - 3.5 . 0 )  upload  interface  is  loaded . 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									do_action (  'pre-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_params  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'post_id'   =>  $post_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'_wpnonce'  =>  wp_create_nonce (  'media-form'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'type'      =>  $_type , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'tab'       =>  $_tab , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'short'     =>  '1' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  media  upload  post  parameters . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.1 . 0  As  'swfupload_post_params' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array  $post_params  An  array  of  media  upload  parameters  used  by  Plupload . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_params  =  apply_filters (  'upload_post_params' ,  $post_params  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									*  Since  4.9  the  `runtimes`  setting  is  hardcoded  in  our  version  of  Plupload  to  `html5,html4` , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									*  and  the  `flash_swf_url`  and  `silverlight_xap_url`  are  not  used . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									*/ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$plupload_init  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'browse_button'     =>  'plupload-browse-button' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'container'         =>  'plupload-upload-ui' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'drop_element'      =>  'drag-drop-area' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'file_data_name'    =>  'async-upload' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'url'               =>  $upload_action_url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'filters'           =>  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'max_file_size'  =>  $max_upload_size  .  'b' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'multipart_params'  =>  $post_params , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// Currently only iOS Safari supports multiple files uploading but iOS 7.x has a bug that prevents uploading of videos
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// when enabled. See #29602.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  wp_is_mobile ()  &&  strpos (  $_SERVER [ 'HTTP_USER_AGENT' ],  'OS 7_'  )  !==  false  && 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									strpos (  $_SERVER [ 'HTTP_USER_AGENT' ],  'like Mac OS X'  )  !==  false  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$plupload_init [ 'multi_selection' ]  =  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  default  Plupload  settings . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array  $plupload_init  An  array  of  default  settings  used  by  Plupload . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$plupload_init  =  apply_filters (  'plupload_init' ,  $plupload_init  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Verify size is an int. If not return default value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$large_size_h  =  absint (  get_option (  'large_size_h'  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  $large_size_h  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$large_size_h  =  1024 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$large_size_w  =  absint (  get_option (  'large_size_w'  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  $large_size_w  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$large_size_w  =  1024 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								var  resize_height  =  < ? php  echo  $large_size_h ;  ?> , resize_width = <?php echo $large_size_w; ?>,
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								wpUploaderInit  =  < ? php  echo  wp_json_encode (  $plupload_init  );  ?> ;
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " plupload-upload-ui "  class = " hide-if-no-js " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  before  the  upload  interface  loads . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0  As  'pre-flash-upload-ui' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'pre-plupload-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< div  id = " drag-drop-area " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< div  class = " drag-drop-inside " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< p  class = " drag-drop-info " >< ? php  _e (  'Drop files here'  );  ?> </p>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p >< ? php  _ex (  'or' ,  'Uploader: Drop files here - or - Select Files'  );  ?> </p>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  class = " drag-drop-buttons " >< input  id = " plupload-browse-button "  type = " button "  value = " <?php esc_attr_e( 'Select Files' ); ?> "  class = " button "  /></ p > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  after  the  upload  interface  loads . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0  As  'post-flash-upload-ui' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'post-plupload-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " html-upload-ui "  class = " hide-if-js " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  before  the  upload  button  in  the  media  upload  interface . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'pre-html-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  id = " async-upload-wrap " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< label  class = " screen-reader-text "  for = " async-upload " >< ? php  _e (  'Upload'  );  ?> </label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										< input  type = " file "  name = " async-upload "  id = " async-upload "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< ? php  submit_button (  __ (  'Upload'  ),  'primary' ,  'html-upload' ,  false  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< a  href = " # "  onclick = " try { top.tb_remove();}catch(e) { }; return false; " >< ? php  _e (  'Cancel'  );  ?> </a>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< div  class = " clear " ></ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  after  the  upload  button  in  the  media  upload  interface . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'post-html-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  class = " max-upload-size " >< ? php  printf (  __ (  'Maximum upload file size: %s.'  ),  esc_html (  size_format (  $max_upload_size  )  )  );  ?> </p>
  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Fires  on  the  post  upload  UI  screen . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Legacy  ( pre - 3.5 . 0 )  media  workflow  hook . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									do_action (  'post-upload-ui'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  form  for  a  given  media  type . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  object  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  integer  $id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_upload_type_form (  $type  =  'file' ,  $errors  =  null ,  $id  =  null  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									media_upload_header (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$post_id  =  isset (  $_REQUEST [ 'post_id' ]  )  ?  intval (  $_REQUEST [ 'post_id' ]  )  :  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_action_url  =  admin_url (  " media-upload.php?type= $type &tab=type&post_id= $post_id "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  media  upload  form  action  URL . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $form_action_url  The  media  upload  form  action  URL . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $type             The  type  of  media .  Default  'file' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_action_url  =  apply_filters (  'media_upload_form_url' ,  $form_action_url ,  $type  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_class       =  'media-upload-form type-form validate' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  get_user_setting (  'uploader'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$form_class  .=  ' html-uploader' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< form  enctype = " multipart/form-data "  method = " post "  action = " <?php echo esc_url(  $form_action_url  ); ?> "  class = " <?php echo  $form_class ; ?> "  id = " <?php echo  $type ; ?>-form " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  submit_button (  '' ,  'hidden' ,  'save' ,  false  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_id "  id = " post_id "  value = " <?php echo (int)  $post_id ; ?> "  />  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  wp_nonce_field (  'media-form'  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< h3  class = " media-title " >< ? php  _e (  'Add media files from your computer'  );  ?> </h3>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  media_upload_form (  $errors  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								jQuery ( function ( $ ){  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									var  preloaded  =  $ ( " .media-item.preloaded " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  preloaded . length  >  0  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										preloaded . each ( function (){ prepareMediaItem ({ id : this . id . replace ( / [ ^ 0 - 9 ] / g ,  '' )}, '' );}); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									updateMediaForm (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								});  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< div  id = " media-items " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  is_wp_error (  $id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											add_filter (  'attachment_fields_to_edit' ,  'media_post_single_attachment_fields_to_edit' ,  10 ,  2  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  get_media_items (  $id ,  $errors  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  '<div id="media-upload-error">'  .  esc_html (  $id -> get_error_message ()  )  .  '</div></div>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  class = " savebutton ml-submit " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  submit_button (  __ (  'Save all changes'  ),  '' ,  'save' ,  false  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ form >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  form  for  external  media . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  object  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  integer  $id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_upload_type_url_form (  $type  =  null ,  $errors  =  null ,  $id  =  null  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  null  ===  $type  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$type  =  'image' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									media_upload_header (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_id  =  isset (  $_REQUEST [ 'post_id' ]  )  ?  intval (  $_REQUEST [ 'post_id' ]  )  :  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_action_url  =  admin_url (  " media-upload.php?type= $type &tab=type&post_id= $post_id "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_action_url  =  apply_filters (  'media_upload_form_url' ,  $form_action_url ,  $type  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_class       =  'media-upload-form type-form validate' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  get_user_setting (  'uploader'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$form_class  .=  ' html-uploader' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< form  enctype = " multipart/form-data "  method = " post "  action = " <?php echo esc_url(  $form_action_url  ); ?> "  class = " <?php echo  $form_class ; ?> "  id = " <?php echo  $type ; ?>-form " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_id "  id = " post_id "  value = " <?php echo (int)  $post_id ; ?> "  />  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  wp_nonce_field (  'media-form'  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< h3  class = " media-title " >< ? php  _e (  'Insert media from another website'  );  ?> </h3>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  addExtImage  =  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									width  :  '' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									height  :  '' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									align  :  'alignnone' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									insert  :  function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  t  =  this ,  html ,  f  =  document . forms [ 0 ],  cls ,  title  =  '' ,  alt  =  '' ,  caption  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  ''  ==  f . src . value  ||  ''  ==  t . width  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  f . alt . value  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											alt  =  f . alt . value . replace ( / '/g, ' & #039;').replace(/"/g, '"').replace(/</g, '<').replace(/>/g, '>');
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  apply_filters (  'disable_captions' ,  ''  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  f . caption . value  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										caption  =  f . caption . value . replace ( / \r\n | \r / g ,  '\n' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										caption  =  caption . replace ( /< [ a - zA - Z0 - 9 ] + (  [ ^<> ] + ) ?> /g, function(a){
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  a . replace ( / [ \r\n\t ] +/ ,  ' ' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										caption  =  caption . replace ( / \s * \n\s */ g ,  '<br />' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  }  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										cls  =  caption  ?  ''  :  ' class="' + t . align + '"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										html  =  '<img alt="' + alt + '" src="' + f . src . value + '"' + cls + ' width="' + t . width + '" height="' + t . height + '" />' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  f . url . value  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											url  =  f . url . value . replace ( / '/g, ' & #039;').replace(/"/g, '"').replace(/</g, '<').replace(/>/g, '>');
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											html  =  '<a href="' + url + '">' + html + '</a>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  caption  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											html  =  '[caption id="" align="' + t . align + '" width="' + t . width + '"]' + html + caption + '[/caption]' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  win  =  window . dialogArguments  ||  opener  ||  parent  ||  top ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										win . send_to_editor ( html ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}, 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									resetImageData  :  function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  t  =  addExtImage ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . width  =  t . height  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										document . getElementById ( 'go_button' ) . style . color  =  '#bbb' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  document . forms [ 0 ] . src . value  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											document . getElementById ( 'status_img' ) . innerHTML  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  document . getElementById ( 'status_img' ) . innerHTML  =  '<img src="<?php echo esc_url( admin_url( ' images / no . png ' ) ); ?>" alt="" />' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}, 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									updateImageData  :  function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  t  =  addExtImage ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . width  =  t . preloadImg . width ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . height  =  t . preloadImg . height ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										document . getElementById ( 'go_button' ) . style . color  =  '#333' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										document . getElementById ( 'status_img' ) . innerHTML  =  '<img src="<?php echo esc_url( admin_url( ' images / yes . png ' ) ); ?>" alt="" />' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}, 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									getImageData  :  function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  jQuery ( 'table.describe' ) . hasClass ( 'not-image' )  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  t  =  addExtImage ,  src  =  document . forms [ 0 ] . src . value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  src  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											t . resetImageData (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											return  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										document . getElementById ( 'status_img' ) . innerHTML  =  '<img src="<?php echo esc_url( admin_url( ' images / spinner - 2 x . gif ' ) ); ?>" alt="" width="16" height="16" />' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . preloadImg  =  new  Image (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . preloadImg . onload  =  t . updateImageData ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . preloadImg . onerror  =  t . resetImageData ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										t . preloadImg . src  =  src ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								};  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								jQuery ( document ) . ready (  function ( $ )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$ ( '.media-types input' ) . click (  function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$ ( 'table.describe' ) . toggleClass ( 'not-image' ,  $ ( '#not-image' ) . prop ( 'checked' )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								});  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " media-items " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  class = " media-item media-blank " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  insert  media  from  URL  form  HTML . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $form_html  The  insert  from  URL  form  HTML . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  apply_filters (  'type_url_form_media' ,  wp_media_insert_url_form (  $type  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ form >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Adds  gallery  form  to  upload  iframe 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $redir_tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string  $tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_upload_gallery_form (  $errors  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									global  $redir_tab ,  $type ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$redir_tab  =  'gallery' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									media_upload_header (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$post_id          =  intval (  $_REQUEST [ 'post_id' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_action_url  =  admin_url (  " media-upload.php?type= $type &tab=gallery&post_id= $post_id "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_action_url  =  apply_filters (  'media_upload_form_url' ,  $form_action_url ,  $type  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_class       =  'media-upload-form validate' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  get_user_setting (  'uploader'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$form_class  .=  ' html-uploader' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								jQuery ( function ( $ ){  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									var  preloaded  =  $ ( " .media-item.preloaded " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  preloaded . length  >  0  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										preloaded . each ( function (){ prepareMediaItem ({ id : this . id . replace ( / [ ^ 0 - 9 ] / g ,  '' )}, '' );}); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										updateMediaForm (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								});  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " sort-buttons "  class = " hide-if-no-js " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< span >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  _e (  'All Tabs:'  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< a  href = " # "  id = " showall " >< ? php  _e (  'Show'  );  ?> </a>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< a  href = " # "  id = " hideall "  style = " display:none; " >< ? php  _e (  'Hide'  );  ?> </a>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ span >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  _e (  'Sort Order:'  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< a  href = " # "  id = " asc " >< ? php  _e (  'Ascending'  );  ?> </a> |
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< a  href = " # "  id = " desc " >< ? php  _e (  'Descending'  );  ?> </a> |
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< a  href = " # "  id = " clear " >< ? php  _ex (  'Clear' ,  'verb'  );  ?> </a>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< form  enctype = " multipart/form-data "  method = " post "  action = " <?php echo esc_url(  $form_action_url  ); ?> "  class = " <?php echo  $form_class ; ?> "  id = " gallery-form " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  wp_nonce_field (  'media-form'  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  //media_upload_form( $errors ); ?>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< table  class = " widefat " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< thead >< tr >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< th >< ? php  _e (  'Media'  );  ?> </th>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< th  class = " order-head " >< ? php  _e (  'Order'  );  ?> </th>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< th  class = " actions-head " >< ? php  _e (  'Actions'  );  ?> </th>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ tr ></ thead >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " media-items " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  add_filter (  'attachment_fields_to_edit' ,  'media_post_single_attachment_fields_to_edit' ,  10 ,  2  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  echo  get_media_items (  $post_id ,  $errors  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  class = " ml-submit " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									submit_button ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										__ (  'Save all changes'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'savebutton' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'save' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'id'     =>  'save-all' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'style'  =>  'display: none;' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_id "  id = " post_id "  value = " <?php echo (int)  $post_id ; ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " type "  value = " <?php echo esc_attr(  $GLOBALS['type']  ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " tab "  value = " <?php echo esc_attr(  $GLOBALS['tab']  ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " gallery-settings "  style = " display:none; " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< div  class = " title " >< ? php  _e (  'Gallery Settings'  );  ?> </div>
  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< table  id = " basic "  class = " describe " >< tbody >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< span  class = " alignleft " >< ? php  _e (  'Link thumbnails to:'  );  ?> </span>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td  class = " field " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< input  type = " radio "  name = " linkto "  id = " linkto-file "  value = " file "  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< label  for = " linkto-file "  class = " radio " >< ? php  _e (  'Image File'  );  ?> </label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< input  type = " radio "  checked = " checked "  name = " linkto "  id = " linkto-post "  value = " post "  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< label  for = " linkto-post "  class = " radio " >< ? php  _e (  'Attachment Page'  );  ?> </label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< span  class = " alignleft " >< ? php  _e (  'Order images by:'  );  ?> </span>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td  class = " field " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< select  id = " orderby "  name = " orderby " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< option  value = " menu_order "  selected = " selected " >< ? php  _e (  'Menu order'  );  ?> </option>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " title " >< ? php  _e (  'Title'  );  ?> </option>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " post_date " >< ? php  _e (  'Date/Time'  );  ?> </option>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " rand " >< ? php  _e (  'Random'  );  ?> </option>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ select > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< span  class = " alignleft " >< ? php  _e (  'Order:'  );  ?> </span>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td  class = " field " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< input  type = " radio "  checked = " checked "  name = " order "  id = " order-asc "  value = " asc "  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< label  for = " order-asc "  class = " radio " >< ? php  _e (  'Ascending'  );  ?> </label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< input  type = " radio "  name = " order "  id = " order-desc "  value = " desc "  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< label  for = " order-desc "  class = " radio " >< ? php  _e (  'Descending'  );  ?> </label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< span  class = " alignleft " >< ? php  _e (  'Gallery columns:'  );  ?> </span>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td  class = " field " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< select  id = " columns "  name = " columns " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 1 " > 1 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 2 " > 2 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 3 "  selected = " selected " > 3 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 4 " > 4 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 5 " > 5 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 6 " > 6 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 7 " > 7 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 8 " > 8 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< option  value = " 9 " > 9 </ option > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ select > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ tbody ></ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  class = " ml-submit " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " button "  class = " button "  style = " display:none; "  onMouseDown = " wpgallery.update(); "  name = " insert-gallery "  id = " insert-gallery "  value = " <?php esc_attr_e( 'Insert gallery' ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " button "  class = " button "  style = " display:none; "  onMouseDown = " wpgallery.update(); "  name = " update-gallery "  id = " update-gallery "  value = " <?php esc_attr_e( 'Update gallery settings' ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ form >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Outputs  the  legacy  media  upload  form  for  the  media  library . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  wpdb       $wpdb 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  WP_Query   $wp_query 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  WP_Locale  $wp_locale 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string     $type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  string     $tab 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  array      $post_mime_types 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $errors 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  media_upload_library_form (  $errors  )  {  
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									global  $wpdb ,  $wp_query ,  $wp_locale ,  $type ,  $tab ,  $post_mime_types ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									media_upload_header (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post_id  =  isset (  $_REQUEST [ 'post_id' ]  )  ?  intval (  $_REQUEST [ 'post_id' ]  )  :  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_action_url  =  admin_url (  " media-upload.php?type= $type &tab=library&post_id= $post_id "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$form_action_url  =  apply_filters (  'media_upload_form_url' ,  $form_action_url ,  $type  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$form_class       =  'media-upload-form validate' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  get_user_setting (  'uploader'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$form_class  .=  ' html-uploader' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$q                    =  $_GET ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$q [ 'posts_per_page' ]  =  10 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$q [ 'paged' ]           =  isset (  $q [ 'paged' ]  )  ?  intval (  $q [ 'paged' ]  )  :  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									if  (  $q [ 'paged' ]  <  1  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$q [ 'paged' ]  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$q [ 'offset' ]  =  (  $q [ 'paged' ]  -  1  )  *  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $q [ 'offset' ]  <  1  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$q [ 'offset' ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									list ( $post_mime_types ,  $avail_post_mime_types )  =  wp_edit_attachments_query (  $q  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< form  id = " filter "  method = " get " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " type "  value = " <?php echo esc_attr(  $type  ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " tab "  value = " <?php echo esc_attr(  $tab  ); ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_id "  value = " <?php echo (int)  $post_id ; ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_mime_type "  value = " <?php echo isset(  $_GET['post_mime_type']  ) ? esc_attr(  $_GET['post_mime_type']  ) : ''; ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " context "  value = " <?php echo isset(  $_GET['context']  ) ? esc_attr(  $_GET['context']  ) : ''; ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  id = " media-search "  class = " search-box " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< label  class = " screen-reader-text "  for = " media-search-input " >< ? php  _e (  'Search Media'  );  ?> :</label>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< input  type = " search "  id = " media-search-input "  name = " s "  value = " <?php the_search_query(); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  submit_button (  __ (  'Search Media'  ),  '' ,  '' ,  false  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ul  class = " subsubsub " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type_links  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_num_posts  =  ( array )  wp_count_attachments (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$matches     =  wp_match_mime_types (  array_keys (  $post_mime_types  ),  array_keys (  $_num_posts  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $matches  as  $_type  =>  $reals  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $reals  as  $real  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $num_posts [  $_type  ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$num_posts [  $_type  ]  +=  $_num_posts [  $real  ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$num_posts [  $_type  ]  =  $_num_posts [  $real  ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// If available type specified by media button clicked, filter by that type
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $_GET [ 'post_mime_type' ]  )  &&  !  empty (  $num_posts [  $type  ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$_GET [ 'post_mime_type' ]                         =  $type ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										list ( $post_mime_types ,  $avail_post_mime_types )  =  wp_edit_attachments_query (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $_GET [ 'post_mime_type' ]  )  ||  $_GET [ 'post_mime_type' ]  ==  'all'  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$class  =  ' class="current"' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$class  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type_links []  =  '<li><a href="'  .  esc_url ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										add_query_arg ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'post_mime_type'  =>  'all' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'paged'           =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'm'               =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									)  .  '"'  .  $class  .  '>'  .  __ (  'All Types'  )  .  '</a>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  $post_mime_types  as  $mime_type  =>  $label  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$class  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  wp_match_mime_types (  $mime_type ,  $avail_post_mime_types  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  isset (  $_GET [ 'post_mime_type' ]  )  &&  wp_match_mime_types (  $mime_type ,  $_GET [ 'post_mime_type' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$class  =  ' class="current"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$type_links []  =  '<li><a href="'  .  esc_url ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											add_query_arg ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'post_mime_type'  =>  $mime_type , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'paged'           =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										)  .  '"'  .  $class  .  '>'  .  sprintf (  translate_nooped_plural (  $label [ 2 ],  $num_posts [  $mime_type  ]  ),  '<span id="'  .  $mime_type  .  '-counter">'  .  number_format_i18n (  $num_posts [  $mime_type  ]  )  .  '</span>'  )  .  '</a>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  media  upload  mime  type  list  items . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Returned  values  should  begin  with  an  `<li>`  tag . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  3.1 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string []  $type_links  An  array  of  list  items  containing  mime  type  link  HTML . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  implode (  ' | </li>' ,  apply_filters (  'media_upload_mime_type_links' ,  $type_links  )  )  .  '</li>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									unset (  $type_links  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ ul >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  class = " tablenav " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$page_links  =  paginate_links ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'base'       =>  add_query_arg (  'paged' ,  '%#%'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'format'     =>  '' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'prev_text'  =>  __ (  '«'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'next_text'  =>  __ (  '»'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'total'      =>  ceil (  $wp_query -> found_posts  /  10  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'current'    =>  $q [ 'paged' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  $page_links  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  " <div class='tablenav-pages'> $page_links </div> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  class = " alignleft actions " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$arc_query  =  " SELECT DISTINCT YEAR(post_date) AS yyear, MONTH(post_date) AS mmonth FROM  $wpdb->posts  WHERE post_type = 'attachment' ORDER BY post_date DESC " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$arc_result  =  $wpdb -> get_results (  $arc_query  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$month_count     =  count (  $arc_result  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$selected_month  =  isset (  $_GET [ 'm' ]  )  ?  $_GET [ 'm' ]  :  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $month_count  &&  !  (  1  ==  $month_count  &&  0  ==  $arc_result [ 0 ] -> mmonth  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< select  name = 'm' >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< option < ? php  selected (  $selected_month ,  0  );  ?>  value='0'><?php _e( 'All dates' ); ?></option>
  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $arc_result  as  $arc_row  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  $arc_row -> yyear  ==  0  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$arc_row -> mmonth  =  zeroise (  $arc_row -> mmonth ,  2  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  $arc_row -> yyear  .  $arc_row -> mmonth  ==  $selected_month  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$default  =  ' selected="selected"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$default  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " <option $default  value=' "  .  esc_attr (  $arc_row -> yyear  .  $arc_row -> mmonth  )  .  " '> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  esc_html (  $wp_locale -> get_month (  $arc_row -> mmonth  )  .  "   $arc_row->yyear "  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " </option> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ select >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  }  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  submit_button (  __ (  'Filter »'  ),  '' ,  'post-query-submit' ,  false  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  class = " clear "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ form >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< form  enctype = " multipart/form-data "  method = " post "  action = " <?php echo esc_url(  $form_action_url  ); ?> "  class = " <?php echo  $form_class ; ?> "  id = " library-form " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  wp_nonce_field (  'media-form'  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  //media_upload_form( $errors ); ?>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< script  type = " text/javascript " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								<!--  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								jQuery ( function ( $ ){  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									var  preloaded  =  $ ( " .media-item.preloaded " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  preloaded . length  >  0  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										preloaded . each ( function (){ prepareMediaItem ({ id : this . id . replace ( / [ ^ 0 - 9 ] / g ,  '' )}, '' );}); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										updateMediaForm (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								});  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								-->  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ script >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div  id = " media-items " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  add_filter (  'attachment_fields_to_edit' ,  'media_post_single_attachment_fields_to_edit' ,  10 ,  2  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  echo  get_media_items (  null ,  $errors  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p  class = " ml-submit " >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php  submit_button (  __ (  'Save all changes'  ),  'savebutton' ,  'save' ,  false  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " post_id "  id = " post_id "  value = " <?php echo (int)  $post_id ; ?> "  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ form >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Creates  the  form  for  external  url 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $default_view 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  string  the  form  html 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_media_insert_url_form (  $default_view  =  'image'  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  apply_filters (  'disable_captions' ,  ''  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$caption  =  ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " image-only " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< label  for = " caption " >< span  class = " alignleft " > ' . __( ' Image  Caption ' ) . ' </ span ></ label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td  class = " field " >< textarea  id = " caption "  name = " caption " ></ textarea ></ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$caption  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$default_align  =  get_option (  'image_default_align'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $default_align  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$default_align  =  'none' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  'image'  ==  $default_view  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$view         =  'image-only' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$table_class  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$view  =  $table_class  =  'not-image' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  class = " media-types " >< label >< input  type = " radio "  name = " media_type "  value = " image "  id = " image-only " ' . checked( ' image - only ', $view, false ) . '  />  ' . __( ' Image ' ) . ' </ label >  & nbsp ;  & nbsp ;  < label >< input  type = " radio "  name = " media_type "  value = " generic "  id = " not-image " ' . checked( ' not - image ', $view, false ) . '  />  ' . __( ' Audio ,  Video ,  or  Other  File ' ) . ' </ label ></ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  class = " media-types media-types-required-info " > ' . sprintf( __( ' Required  fields  are  marked  % s ' ), ' < span  class = " required " >*</ span > ' ) . ' </ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< table  class = " describe ' .  $table_class  . ' " >< tbody > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label "  style = " width:130px; " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " src " >< span  class = " alignleft " > ' . __( ' URL ' ) . ' </ span >  < span  class = " required " >*</ span ></ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< span  class = " alignright "  id = " status_img " ></ span > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ th > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< td  class = " field " >< input  id = " src "  name = " src "  value = " "  type = " text "  required  onblur = " addExtImage.getImageData() "  /></ td > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " title " >< span  class = " alignleft " > ' . __( ' Title ' ) . ' </ span >  < span  class = " required " >*</ span ></ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ th > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< td  class = " field " >< input  id = " title "  name = " title "  value = " "  type = " text "  required  /></ td > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< tr  class = " not-image " >< td ></ td >< td >< p  class = " help " > ' . __( ' Link  text ,  e . g .  & #8220;Ransom Demands (PDF)”' ) . '</p></td></tr>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " image-only " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< label  for = " alt " >< span  class = " alignleft " > ' . __( ' Alternative  Text ' ) . ' </ span ></ label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</ th > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< td  class = " field " >< input  id = " alt "  name = " alt "  value = " "  type = " text "  required  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p  class = " help " > ' . __( ' Alt  text  for  the  image ,  e . g .  & #8220;The Mona Lisa”' ) . '</p></td>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										' . $caption . ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " align image-only " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label " >< p >< label  for = " align " > ' . __( ' Alignment ' ) . ' </ label ></ p ></ th > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											< td  class = " field " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< input  name = " align "  id = " align-none "  value = " none "  onclick = " addExtImage.align= \ 'align \ '+this.value "  type = " radio " ' . ( $default_align == ' none ' ? '  checked = " checked " ' : ' ' ) . '  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " align-none "  class = " align image-align-none-label " > ' . __( ' None ' ) . ' </ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< input  name = " align "  id = " align-left "  value = " left "  onclick = " addExtImage.align= \ 'align \ '+this.value "  type = " radio " ' . ( $default_align == ' left ' ? '  checked = " checked " ' : ' ' ) . '  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " align-left "  class = " align image-align-left-label " > ' . __( ' Left ' ) . ' </ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< input  name = " align "  id = " align-center "  value = " center "  onclick = " addExtImage.align= \ 'align \ '+this.value "  type = " radio " ' . ( $default_align == ' center ' ? '  checked = " checked " ' : ' ' ) . '  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " align-center "  class = " align image-align-center-label " > ' . __( ' Center ' ) . ' </ label > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< input  name = " align "  id = " align-right "  value = " right "  onclick = " addExtImage.align= \ 'align \ '+this.value "  type = " radio " ' . ( $default_align == ' right ' ? '  checked = " checked " ' : ' ' ) . '  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< label  for = " align-right "  class = " align image-align-right-label " > ' . __( ' Right ' ) . ' </ label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " image-only " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< th  scope = " row "  class = " label " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< label  for = " url " >< span  class = " alignleft " > ' . __( ' Link  Image  To : ' ) . ' </ span ></ label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</ th > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td  class = " field " >< input  id = " url "  name = " url "  value = " "  type = " text "  />< br  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< button  type = " button "  class = " button "  value = " "  onclick = " document.forms[0].url.value=null " > ' . __( ' None ' ) . ' </ button > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< button  type = " button "  class = " button "  value = " "  onclick = " document.forms[0].url.value=document.forms[0].src.value " > ' . __( ' Link  to  image ' ) . ' </ button > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p  class = " help " > ' . __( ' Enter  a  link  URL  or  click  above  for  presets . ' ) . ' </ p ></ td > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " image-only " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td ></ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												< input  type = " button "  class = " button "  id = " go_button "  style = " color:#bbb; "  onclick = " addExtImage.insert() "  value = " ' . esc_attr__( 'Insert into Post' ) . ' "  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< tr  class = " not-image " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td ></ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												' . get_submit_button( __( ' Insert  into  Post ' ), ' ', ' insertonlybutton ', false ) . ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ tbody ></ table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  the  multi - file  uploader  message . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  int  $post_ID 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_flash_bypass ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$browser_uploader  =  admin_url (  'media-new.php?browser-uploader'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $post  =  get_post ()  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$browser_uploader  .=  '&post_id='  .  intval (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									}  elseif  (  !  empty (  $GLOBALS [ 'post_ID' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$browser_uploader  .=  '&post_id='  .  intval (  $GLOBALS [ 'post_ID' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  class = " upload-flash-bypass " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  printf (  __ (  'You are using the multi-file uploader. Problems? Try the <a href="%1$s" target="%2$s">browser uploader</a> instead.'  ),  $browser_uploader ,  '_blank'  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  the  browser ' s  built - in  uploader  message . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  2.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_html_bypass ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< p  class = " upload-html-bypass hide-if-no-js " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php  _e (  'You are using the browser’s built-in file uploader. The WordPress uploader includes multiple file selection and drag and drop capability. <a href="#">Switch to the multi-file uploader</a>.'  );  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Used  to  display  a  " After a file has been uploaded... "  help  message . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_text_after ()  {}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  the  checkbox  to  scale  images . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.3 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  media_upload_max_image_resize ()  {  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$checked  =  get_user_setting (  'upload_resize'  )  ?  ' checked="true"'  :  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$a        =  $end  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  current_user_can (  'manage_options'  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$a    =  '<a href="'  .  esc_url (  admin_url (  'options-media.php'  )  )  .  '" target="_blank">' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$end  =  '</a>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< p  class = " hide-if-no-js " >< label >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< input  name = " image_resize "  type = " checkbox "  id = " image_resize "  value = " true " < ? php  echo  $checked ;  ?>  />
  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* translators: 1: link start tag, 2: link end tag, 3: width, 4: height */ 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									printf (  __ (  'Scale images to match the large size selected in %1$simage options%2$s (%3$d × %4$d).'  ),  $a ,  $end ,  ( int )  get_option (  'large_size_w' ,  '1024'  ),  ( int )  get_option (  'large_size_h' ,  '1024'  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								</ label ></ p >  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  the  out  of  storage  quota  message  in  Multisite . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  multisite_over_quota_message ()  {  
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									echo  '<p>'  .  sprintf ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/* translators: %s: allowed space allocation */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										__ (  'Sorry, you have used your space allocation of %s. Please delete some files to upload more files.'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										size_format (  get_space_allowed ()  *  MB_IN_BYTES  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									)  .  '</p>' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  the  image  and  editor  in  the  post  editor 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  WP_Post  $post  A  post  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  edit_form_image_editor (  $post  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$open  =  isset (  $_GET [ 'image-editor' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $open  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										require_once  ABSPATH  .  'wp-admin/includes/image-edit.php' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$thumb_url  =  false ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $attachment_id  =  intval (  $post -> ID  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$thumb_url  =  wp_get_attachment_image_src (  $attachment_id ,  array (  900 ,  450  ),  true  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$alt_text  =  get_post_meta (  $post -> ID ,  '_wp_attachment_image_alt' ,  true  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$att_url  =  wp_get_attachment_url (  $post -> ID  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< div  class = " wp_attachment_holder wp-clearfix " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  wp_attachment_is_image (  $post -> ID  )  )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$image_edit_button  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  wp_image_editor_supports (  array (  'mime_type'  =>  $post -> post_mime_type  )  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$nonce              =  wp_create_nonce (  " image_editor- $post->ID "  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$image_edit_button  =  " <input type='button' id='imgedit-open-btn- $post->ID ' onclick='imageEdit.open(  $post->ID ,  \" $nonce\ "  ) ' class=' button ' value=' "  . esc_attr__( 'Edit Image' ) .  " ' /> <span class=' spinner ' ></ span > " ;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$open_style  =  $not_open_style  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $open  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$open_style  =  ' style="display:none"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$not_open_style  =  ' style="display:none"' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< div  class = " imgedit-response "  id = " imgedit-response-<?php echo  $attachment_id ; ?> " ></ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< div < ? php  echo  $open_style ;  ?>  class="wp_attachment_image wp-clearfix" id="media-head-<?php echo $attachment_id; ?>">
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											< p  id = " thumbnail-head-<?php echo  $attachment_id ; ?> " >< img  class = " thumbnail "  src = " <?php echo set_url_scheme(  $thumb_url[0]  ); ?> "  style = " max-width:100% "  alt = " "  /></ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p >< ? php  echo  $image_edit_button ;  ?> </p>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< div < ? php  echo  $not_open_style ;  ?>  class="image-editor" id="image-editor-<?php echo $attachment_id; ?>">
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  $open  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												wp_image_editor (  $attachment_id  );} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif  (  $attachment_id  &&  wp_attachment_is (  'audio' ,  $post  )  )  : 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										wp_maybe_generate_attachment_metadata (  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  wp_audio_shortcode (  array (  'src'  =>  $att_url  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									elseif  (  $attachment_id  &&  wp_attachment_is (  'video' ,  $post  )  )  : 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										wp_maybe_generate_attachment_metadata (  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$meta  =  wp_get_attachment_metadata (  $attachment_id  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$w     =  !  empty (  $meta [ 'width' ]  )  ?  min (  $meta [ 'width' ],  640  )  :  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$h     =  !  empty (  $meta [ 'height' ]  )  ?  $meta [ 'height' ]  :  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										if  (  $h  &&  $w  <  $meta [ 'width' ]  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$h  =  round (  (  $meta [ 'height' ]  *  $w  )  /  $meta [ 'width' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$attr  =  array (  'src'  =>  $att_url  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $w  )  &&  !  empty (  $h  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$attr [ 'width' ]   =  $w ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											$attr [ 'height' ]  =  $h ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$thumb_id  =  get_post_thumbnail_id (  $attachment_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $thumb_id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$attr [ 'poster' ]  =  wp_get_attachment_url (  $thumb_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  wp_video_shortcode (  $attr  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									elseif  (  isset (  $thumb_url [ 0 ]  )  )  : 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< div  class = " wp_attachment_image wp-clearfix "  id = " media-head-<?php echo  $attachment_id ; ?> " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< p  id = " thumbnail-head-<?php echo  $attachment_id ; ?> " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< img  class = " thumbnail "  src = " <?php echo set_url_scheme(  $thumb_url[0]  ); ?> "  style = " max-width:100% "  alt = " "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									else  : 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Fires  when  an  attachment  type  can ' t  be  rendered  in  the  edit  form . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  4.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  WP_Post  $post  A  post  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										do_action (  'wp_edit_form_attachment_display' ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									endif ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< div  class = " wp_attachment_details edit-form-section " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  if  (  'image'  ===  substr (  $post -> post_mime_type ,  0 ,  5  )  )  :  ?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< p  class = " attachment-alt-text " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											< label  for = " attachment_alt " >< strong >< ? php  _e (  'Alternative Text'  );  ?> </strong></label><br />
 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< input  type = " text "  class = " widefat "  name = " _wp_attachment_image_alt "  id = " attachment_alt "  aria - describedby = " alt-text-description "  value = " <?php echo esc_attr(  $alt_text  ); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< p  class = " attachment-alt-text-description "  id = " alt-text-description " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											printf ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												/* translators: 1: link start tag, 2: accessibility text, 3: link end tag */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												__ (  '%1$sDescribe the purpose of the image%2$s%3$s. Leave empty if the image is purely decorative.'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'<a href="'  .  esc_url (  'https://www.w3.org/WAI/tutorials/images/decision-tree'  )  .  '" target="_blank" rel="noopener noreferrer">' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												sprintf ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													'<span class="screen-reader-text"> %s</span>' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													/* translators: accessibility text */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													__ (  '(opens in a new tab)'  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'</a>' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  endif ;  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< label  for = " attachment_caption " >< strong >< ? php  _e (  'Caption'  );  ?> </strong></label><br />
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< textarea  class = " widefat "  name = " excerpt "  id = " attachment_caption " >< ? php  echo  $post -> post_excerpt ;  ?> </textarea>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$quicktags_settings  =  array (  'buttons'  =>  'strong,em,link,block,del,ins,img,ul,ol,li,code,close'  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$editor_args         =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											'textarea_name'  =>  'content' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'textarea_rows'  =>  5 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'media_buttons'  =>  false , 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'tinymce'        =>  false , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'quicktags'      =>  $quicktags_settings , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< label  for = " attachment_content " >< strong >< ? php  _e (  'Description'  );  ?> </strong>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-08 08:05:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  preg_match (  '#^(audio|video)/#' ,  $post -> post_mime_type  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  ': '  .  __ (  'Displayed on attachment pages.'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									</ label > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< ? php  wp_editor (  $post -> post_content ,  'attachment_content' ,  $editor_args  );  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$extras  =  get_compat_media_markup (  $post -> ID  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  $extras [ 'item' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<input type="hidden" id="image-edit-context" value="edit-attachment" />'  .  " \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  non - editable  attachment  metadata  in  the  publish  meta  box . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.5 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  attachment_submitbox_metadata ()  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$post  =  get_post (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$file      =  get_attached_file (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$filename  =  esc_html (  wp_basename (  $file  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$media_dims  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$meta        =  wp_get_attachment_metadata (  $post -> ID  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $meta [ 'width' ],  $meta [ 'height' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$media_dims  .=  " <span id='media-dims- $post->ID '> { $meta [ 'width' ] }  ×  { $meta [ 'height' ] } </span>  " ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									/** This filter is documented in wp-admin/includes/media.php */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$media_dims  =  apply_filters (  'media_meta' ,  $media_dims ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$att_url  =  wp_get_attachment_url (  $post -> ID  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< div  class = " misc-pub-section misc-pub-attachment " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< label  for = " attachment_url " >< ? php  _e (  'File URL:'  );  ?> </label>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< input  type = " text "  class = " widefat urlfield "  readonly = " readonly "  name = " attachment_url "  id = " attachment_url "  value = " <?php echo esc_attr(  $att_url  ); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< div  class = " misc-pub-section misc-pub-filename " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< ? php  _e (  'File name:'  );  ?>  <strong><?php echo $filename; ?></strong>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< div  class = " misc-pub-section misc-pub-filetype " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php  _e (  'File type:'  );  ?>  <strong>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													if  (  preg_match (  '/^.*?\.(\w+)$/' ,  get_attached_file (  $post -> ID  ),  $matches  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														echo  esc_html (  strtoupper (  $matches [ 1 ]  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														list (  $mime_type  )  =  explode (  '/' ,  $post -> post_mime_type  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														if  (  $mime_type  !==  'image'  &&  !  empty (  $meta [ 'mime_type' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															if  (  $meta [ 'mime_type' ]  !==  " $mime_type / "  .  strtolower (  $matches [ 1 ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																echo  ' ('  .  $meta [ 'mime_type' ]  .  ')' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														echo  strtoupper (  str_replace (  'image/' ,  '' ,  $post -> post_mime_type  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</ strong > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$file_size  =  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $meta [ 'filesize' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$file_size  =  $meta [ 'filesize' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  elseif  (  file_exists (  $file  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$file_size  =  filesize (  $file  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $file_size  )  )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											< div  class = " misc-pub-section misc-pub-filesize " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												< ? php  _e (  'File size:'  );  ?>  <strong><?php echo size_format( $file_size ); ?></strong>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										endif ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  preg_match (  '#^(audio|video)/#' ,  $post -> post_mime_type  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$fields  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'length_formatted'  =>  __ (  'Length:'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'bitrate'           =>  __ (  'Bitrate:'  ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Filters  the  audio  and  video  metadata  fields  to  be  shown  in  the  publish  meta  box . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  The  key  for  each  item  in  the  array  should  correspond  to  an  attachment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  metadata  key ,  and  the  value  should  be  the  desired  label . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  3.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  4.9 . 0  Added  the  `$post`  parameter . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  array    $fields  An  array  of  the  attachment  metadata  keys  and  labels . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  WP_Post  $post    WP_Post  object  for  the  current  attachment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$fields  =  apply_filters (  'media_submitbox_misc_sections' ,  $fields ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $fields  as  $key  =>  $label  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  empty (  $meta [  $key  ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										< div  class = " misc-pub-section misc-pub-mime-meta misc-pub-<?php echo sanitize_html_class(  $key  ); ?> " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< ? php  echo  $label ;  ?>  <strong>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														switch  (  $key  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															case  'bitrate' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																echo  round (  $meta [ 'bitrate' ]  /  1000  )  .  'kb/s' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																if  (  !  empty (  $meta [ 'bitrate_mode' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																	echo  ' '  .  strtoupper (  esc_html (  $meta [ 'bitrate_mode' ]  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															default : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																echo  esc_html (  $meta [  $key  ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																break ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
														} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
														?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</ strong > 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$fields  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											'dataformat'  =>  __ (  'Audio Format:'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											'codec'       =>  __ (  'Audio Codec:'  ), 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  Filters  the  audio  attachment  metadata  fields  to  be  shown  in  the  publish  meta  box . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  The  key  for  each  item  in  the  array  should  correspond  to  an  attachment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  metadata  key ,  and  the  value  should  be  the  desired  label . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  3.7 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ since  4.9 . 0  Added  the  `$post`  parameter . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  array    $fields  An  array  of  the  attachment  metadata  keys  and  labels . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 *  @ param  WP_Post  $post    WP_Post  object  for  the  current  attachment . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$audio_fields  =  apply_filters (  'audio_submitbox_misc_sections' ,  $fields ,  $post  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $audio_fields  as  $key  =>  $label  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  empty (  $meta [ 'audio' ][  $key  ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										< div  class = " misc-pub-section misc-pub-audio misc-pub-<?php echo sanitize_html_class(  $key  ); ?> " > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< ? php  echo  $label ;  ?>  <strong><?php echo esc_html( $meta['audio'][ $key ] ); ?></strong>
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  $media_dims  )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										?> 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									< div  class = " misc-pub-section misc-pub-dimensions " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										< ? php  _e (  'Dimensions:'  );  ?>  <strong><?php echo $media_dims; ?></strong>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ div > 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									endif ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Parse  ID3v2 ,  ID3v1 ,  and  getID3  comments  to  extract  usable  data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $metadata  An  existing  array  with  data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $data  Data  supplied  by  ID3  tags 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_add_id3_tag_data (  & $metadata ,  $data  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  array (  'id3v2' ,  'id3v1'  )  as  $version  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  (  !  empty (  $data [  $version  ][ 'comments' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  (  $data [  $version  ][ 'comments' ]  as  $key  =>  $list  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												if  (  'length'  !==  $key  &&  !  empty (  $list  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													$metadata [  $key  ]  =  wp_kses_post (  reset (  $list  )  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
													// Fix bug in byte stream analysis.
 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													if  (  'terms_of_use'  ===  $key  &&  0  ===  strpos (  $metadata [  $key  ],  'yright notice.'  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$metadata [  $key  ]  =  'Cop'  .  $metadata [  $key  ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'id3v2' ][ 'APIC' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$image  =  reset (  $data [ 'id3v2' ][ 'APIC' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $image [ 'data' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$metadata [ 'image' ]  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												'data'    =>  $image [ 'data' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'mime'    =>  $image [ 'image_mime' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'width'   =>  $image [ 'image_width' ], 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'height'  =>  $image [ 'image_height' ], 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}  elseif  (  !  empty (  $data [ 'comments' ][ 'picture' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$image  =  reset (  $data [ 'comments' ][ 'picture' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  empty (  $image [ 'data' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$metadata [ 'image' ]  =  array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												'data'  =>  $image [ 'data' ], 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												'mime'  =>  $image [ 'image_mime' ], 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Retrieve  metadata  from  a  video  file ' s  ID3  tags 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $file  Path  to  file . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array | bool  Returns  array  of  metadata ,  if  found . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_read_video_metadata (  $file  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  file_exists (  $file  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$metadata  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  defined (  'GETID3_TEMP_DIR'  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										define (  'GETID3_TEMP_DIR' ,  get_temp_dir ()  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  class_exists (  'getID3' ,  false  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										require (  ABSPATH  .  WPINC  .  '/ID3/getid3.php'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$id3   =  new  getID3 (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$data  =  $id3 -> analyze (  $file  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  isset (  $data [ 'video' ][ 'lossless' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'lossless' ]  =  $data [ 'video' ][ 'lossless' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'bitrate' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'bitrate' ]  =  ( int )  $data [ 'video' ][ 'bitrate' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'bitrate_mode' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'bitrate_mode' ]  =  $data [ 'video' ][ 'bitrate_mode' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'filesize' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'filesize' ]  =  ( int )  $data [ 'filesize' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'mime_type' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'mime_type' ]  =  $data [ 'mime_type' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'playtime_seconds' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'length' ]  =  ( int )  round (  $data [ 'playtime_seconds' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'playtime_string' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'length_formatted' ]  =  $data [ 'playtime_string' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'resolution_x' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'width' ]  =  ( int )  $data [ 'video' ][ 'resolution_x' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'resolution_y' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'height' ]  =  ( int )  $data [ 'video' ][ 'resolution_y' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'fileformat' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'fileformat' ]  =  $data [ 'fileformat' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'dataformat' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'dataformat' ]  =  $data [ 'video' ][ 'dataformat' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'encoder' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'encoder' ]  =  $data [ 'video' ][ 'encoder' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'video' ][ 'codec' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'codec' ]  =  $data [ 'video' ][ 'codec' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'audio' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $data [ 'audio' ][ 'streams' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$metadata [ 'audio' ]  =  $data [ 'audio' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $metadata [ 'created_timestamp' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$created_timestamp  =  wp_get_media_creation_timestamp (  $data  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $created_timestamp  !==  false  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$metadata [ 'created_timestamp' ]  =  $created_timestamp ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									wp_add_id3_tag_data (  $metadata ,  $data  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$file_format  =  isset (  $metadata [ 'fileformat' ]  )  ?  $metadata [ 'fileformat' ]  :  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  Filters  the  array  of  metadata  retrieved  from  a  video . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  In  core ,  usually  this  selection  is  what  is  stored . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  More  complete  data  can  be  parsed  from  the  `$data`  parameter . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ since  4.9 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  array   $metadata        Filtered  Video  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $file            Path  to  video  file . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $file_format     File  format  of  video ,  as  analyzed  by  getID3 . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 *  @ param  string  $data            Raw  metadata  from  getID3 . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  apply_filters (  'wp_read_video_metadata' ,  $metadata ,  $file ,  $file_format ,  $data  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Retrieve  metadata  from  an  audio  file ' s  ID3  tags . 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  3.6 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $file  Path  to  file . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  array | bool  Returns  array  of  metadata ,  if  found . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_read_audio_metadata (  $file  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  file_exists (  $file  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$metadata  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  defined (  'GETID3_TEMP_DIR'  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										define (  'GETID3_TEMP_DIR' ,  get_temp_dir ()  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  class_exists (  'getID3' ,  false  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										require (  ABSPATH  .  WPINC  .  '/ID3/getid3.php'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$id3   =  new  getID3 (); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									$data  =  $id3 -> analyze (  $file  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'audio' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										unset (  $data [ 'audio' ][ 'streams' ]  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$metadata  =  $data [ 'audio' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'fileformat' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'fileformat' ]  =  $data [ 'fileformat' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'filesize' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'filesize' ]  =  ( int )  $data [ 'filesize' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'mime_type' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'mime_type' ]  =  $data [ 'mime_type' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'playtime_seconds' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'length' ]  =  ( int )  round (  $data [ 'playtime_seconds' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $data [ 'playtime_string' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$metadata [ 'length_formatted' ]  =  $data [ 'playtime_string' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $metadata [ 'created_timestamp' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$created_timestamp  =  wp_get_media_creation_timestamp (  $data  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  false  !==  $created_timestamp  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$metadata [ 'created_timestamp' ]  =  $created_timestamp ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									wp_add_id3_tag_data (  $metadata ,  $data  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $metadata ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Parse  creation  date  from  media  metadata . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  The  getID3  library  doesn ' t  have  a  standard  method  for  getting  creation  dates , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  so  the  location  of  this  data  can  vary  based  on  the  MIME  type . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  4.9 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ link  https :// github . com / JamesHeinrich / getID3 / blob / master / structure . txt 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $metadata  The  metadata  returned  by  getID3 :: analyze () . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  int | bool  A  UNIX  timestamp  for  the  media ' s  creation  date  if  available 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *                   or  a  boolean  FALSE  if  a  timestamp  could  not  be  determined . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_get_media_creation_timestamp (  $metadata  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$creation_date  =  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  empty (  $metadata [ 'fileformat' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  $creation_date ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									switch  (  $metadata [ 'fileformat' ]  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										case  'asf' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $metadata [ 'asf' ][ 'file_properties_object' ][ 'creation_date_unix' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$creation_date  =  ( int )  $metadata [ 'asf' ][ 'file_properties_object' ][ 'creation_date_unix' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										case  'matroska' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										case  'webm' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $metadata [ 'matroska' ][ 'comments' ][ 'creation_time' ][ '0' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$creation_date  =  strtotime (  $metadata [ 'matroska' ][ 'comments' ][ 'creation_time' ][ '0' ]  ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											}  elseif  (  isset (  $metadata [ 'matroska' ][ 'info' ][ '0' ][ 'DateUTC_unix' ]  )  )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
												$creation_date  =  ( int )  $metadata [ 'matroska' ][ 'info' ][ '0' ][ 'DateUTC_unix' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										case  'quicktime' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										case  'mp4' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  isset (  $metadata [ 'quicktime' ][ 'moov' ][ 'subatoms' ][ '0' ][ 'creation_time_unix' ]  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$creation_date  =  ( int )  $metadata [ 'quicktime' ][ 'moov' ][ 'subatoms' ][ '0' ][ 'creation_time_unix' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $creation_date ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Encapsulate  logic  for  Attach / Detach  actions 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ since  4.2 . 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ global  wpdb  $wpdb  WordPress  database  abstraction  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  int     $parent_id  Attachment  parent  ID . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $action     Optional .  Attach / detach  action .  Accepts  'attach'  or  'detach' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *                           Default  'attach' . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  wp_media_attach_action (  $parent_id ,  $action  =  'attach'  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									global  $wpdb ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  $parent_id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  current_user_can (  'edit_post' ,  $parent_id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										wp_die (  __ (  'Sorry, you are not allowed to edit this post.'  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$ids  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  (  ( array )  $_REQUEST [ 'media' ]  as  $att_id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$att_id  =  ( int )  $att_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  !  current_user_can (  'edit_post' ,  $att_id  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$ids []  =  $att_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  !  empty (  $ids  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$ids_string  =  implode (  ',' ,  $ids  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  'attach'  ===  $action  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$result  =  $wpdb -> query (  $wpdb -> prepare (  " UPDATE  $wpdb->posts  SET post_parent = %d WHERE post_type = 'attachment' AND ID IN (  $ids_string  ) " ,  $parent_id  )  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										}  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$result  =  $wpdb -> query (  " UPDATE  $wpdb->posts  SET post_parent = 0 WHERE post_type = 'attachment' AND ID IN (  $ids_string  ) "  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  (  $ids  as  $att_id  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											clean_attachment_cache (  $att_id  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  (  isset (  $result  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$location  =  'upload.php' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (  $referer  =  wp_get_referer ()  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  (  false  !==  strpos (  $referer ,  'upload.php'  )  )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$location  =  remove_query_arg (  array (  'attached' ,  'detach'  ),  $referer  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-04-16 20:56:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$key       =  'attach'  ===  $action  ?  'attached'  :  'detach' ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-12 09:27:46 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$location  =  add_query_arg (  array (  $key  =>  $result  ),  $location  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										wp_redirect (  $location  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}