Ticket #1570: 1570.diff
File 1570.diff, 4.3 KB (added by , 8 years ago) |
---|
-
wp-content/plugins/plugin-directory/admin/class-customizations.php
174 174 $query->query_vars['post_status'] = array( 'publish', 'future', 'draft', 'pending', 'disabled', 'closed', 'rejected', 'approved' ); 175 175 } 176 176 177 // Make it possible to search for plugins that were submitted from a specific IP. 178 if ( ! empty( $query->query['s'] ) && filter_var( $query->query['s'], FILTER_VALIDATE_IP ) ) { 179 $query->query_vars['meta_key'] = '_author_ip'; 180 $query->query_vars['meta_value'] = $query->query_vars['s']; 181 unset( $query->query_vars['s'] ); 182 183 add_filter( 'get_search_query', function() use ( $query ) { 184 return esc_html( $query->query_vars['meta_value'] ); 185 } ); 186 } 187 177 188 $user = wp_get_current_user(); 178 189 179 190 if ( ! current_user_can( 'plugin_approve' ) && empty( $query->query['post_status']) || ( isset( $query->query['author'] ) && $query->query['author'] == $user->ID ) ) { -
wp-content/plugins/plugin-directory/admin/metabox/class-author-card.php
78 78 echo '<p>This user is: <strong>' . implode( ', ', $unsavory ) . '</strong></p>'; 79 79 } 80 80 81 $user_ips = array();// $wpdb->get_col( $wpdb->prepare( 'SELECT DISTINCT poster_ip FROM plugin_2_posts WHERE poster_id = %s', $author->ID ) ); 82 $user_ips = array_filter( $user_ips, 'strlen' ); 81 $post_ids = get_posts( array( 82 'fields' => 'ids', 83 'post_type' => 'plugin', 84 'author' => $author->ID, 85 'meta_key' => '_author_ip', 86 'posts_per_page' => -1, 87 ) ); 88 89 $user_ips = array_unique( array_map( function( $post_id ) { 90 return get_post_meta( $post_id, '_author_ip', true ); 91 }, $post_ids ) ); 92 83 93 if ( $user_ips ) : 84 94 sort( $user_ips, SORT_NUMERIC ); 85 95 86 $user_ips = array_map( array( 'Author_Card', 'link_ip' ), $user_ips ); 87 88 echo '<p>IPs : ' . implode( ', ', $user_ips ) . '</p>'; 96 printf( '<p>IPs : %s</p>', implode( ', ', array_map( array( __NAMESPACE__ . '\Author_Card', 'link_ip' ), $user_ips ) ) ); 89 97 endif; 90 98 91 99 if ( $author->user_pass == '~~~' ) : ?> … … 190 198 */ 191 199 do_action( 'wporg_plugins_author_card', $post, $author, $all_plugins ); 192 200 } 201 202 /** 203 * Builds a link to a list of plugins submitted from a given IP. 204 * 205 * @param string $ip IP address of the plugin author. 206 * @return string 207 */ 208 protected static function link_ip( $ip ) { 209 return sprintf( '<a href="%1$s">%2$s</a>', esc_url( add_query_arg( array( 210 'post_type' => 'plugin', 211 's' => $ip, 212 ), admin_url( 'edit.php' ) ) ), $ip ); 213 } 193 214 } -
wp-content/plugins/plugin-directory/cli/class-import.php
170 170 } 171 171 update_post_meta( $plugin->ID, 'assets_banners_color', wp_slash( $banner_average_color ) ); 172 172 173 $ip = $wpdb->get_var( $wpdb->prepare( 'SELECT poster_ip FROM ' . PLUGINS_TABLE_PREFIX . 'posts WHERE topic_id = %s', $topic->topic_id ) ); 174 if ( $ip ) { 175 update_post_meta( $plugin->ID, '_author_ip', wp_slash( $ip ) ); 176 } 177 173 178 // Give committers a role on this site. 174 179 foreach ( Tools::get_plugin_committers( $plugin_slug ) as $committer ) { 175 180 // @todo: Enable. -
wp-content/plugins/plugin-directory/shortcodes/class-upload-handler.php
203 203 'assets_banners_color' => false, 204 204 'support_threads' => 0, 205 205 'support_threads_resolved' => 0, 206 '_author_ip' => preg_replace( '/[^0-9a-fA-F:., ]/', '', $_SERVER['REMOTE_ADDR'] ), 206 207 ), 207 208 ) ); 208 209 if ( is_wp_error( $plugin_post ) ) {