Changeset 6340
- Timestamp:
- 03/02/2017 03:57:04 AM (8 years ago)
- Location:
- trunk/src/includes/admin/tools
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/includes/admin/tools/repair.php
r6320 r6340 244 244 $cps = bbp_get_closed_status_id(); 245 245 246 $ voice_id_sql = $bbp_db->prepare( "INSERT INTO {$bbp_db->postmeta} (post_id, meta_key, meta_value) (246 $engagements_sql = $bbp_db->prepare( "INSERT INTO {$bbp_db->postmeta} (post_id, meta_key, meta_value) ( 247 247 SELECT postmeta.meta_value, '_bbp_engagement', posts.post_author 248 248 FROM {$bbp_db->posts} AS posts … … 251 251 AND postmeta.meta_key = '_bbp_topic_id' 252 252 WHERE posts.post_type IN (%s, %s) 253 AND posts.post_status IN (%s, %s))", $tpt, $rpt, $pps, $cps ); 254 255 if ( is_wp_error( $bbp_db->query( $voice_id_sql ) ) ) { 253 AND posts.post_status IN (%s, %s) 254 GROUP BY postmeta.meta_value, posts.post_author)", $tpt, $rpt, $pps, $cps ); 255 256 if ( is_wp_error( $bbp_db->query( $engagements_sql ) ) ) { 256 257 return array( 2, sprintf( $statement, $result ) ); 257 258 } … … 261 262 FROM {$bbp_db->postmeta} 262 263 WHERE meta_key = '_bbp_engagement' 263 GROUP BY post_id ORDER BY post_id)";264 GROUP BY post_id)"; 264 265 265 266 if ( is_wp_error( $bbp_db->query( $voice_count_sql ) ) ) { -
trunk/src/includes/admin/tools/upgrades.php
r6333 r6340 168 168 $statement = __( 'Upgrading user engagements … %s', 'bbpress' ); 169 169 $result = __( 'No engagements to upgrade.', 'bbpress' ); 170 $total = 0;171 170 172 171 // Delete previous engagements … … 181 180 $pps = bbp_get_public_status_id(); 182 181 $cps = bbp_get_closed_status_id(); 183 $sql = $bbp_db->prepare( "SELECT postmeta.meta_value, '_bbp_engagement', posts.post_author 184 FROM {$bbp_db->posts} AS posts 185 LEFT JOIN {$bbp_db->postmeta} AS postmeta 186 ON posts.ID = postmeta.post_id 187 AND postmeta.meta_key = '_bbp_topic_id' 188 WHERE posts.post_type IN (%s, %s) 189 AND posts.post_status IN (%s, %s)", $tpt, $rpt, $pps, $cps ); 190 191 $engagements = $bbp_db->get_results( $sql ); 182 $sql = $bbp_db->prepare( "INSERT INTO {$bbp_db->postmeta} (post_id, meta_key, meta_value) ( 183 SELECT postmeta.meta_value, '_bbp_engagement', posts.post_author 184 FROM {$bbp_db->posts} AS posts 185 LEFT JOIN {$bbp_db->postmeta} AS postmeta 186 ON posts.ID = postmeta.post_id 187 AND postmeta.meta_key = '_bbp_topic_id' 188 WHERE posts.post_type IN (%s, %s) 189 AND posts.post_status IN (%s, %s) 190 GROUP BY postmeta.meta_value, posts.post_author)", $tpt, $rpt, $pps, $cps ); 191 192 $engagements = $bbp_db->query( $sql ); 192 193 193 194 // Bail if no closed topics found … … 196 197 } 197 198 198 // Loop through each user's engagements 199 foreach ( $engagements as $meta ) { 200 201 // Skip if already exists 202 if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT * FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %d LIMIT 1", $meta->meta_value, '_bbp_engagement', $meta->post_author ) ) ) { 203 continue; 204 } 205 206 // Add the post meta 207 $added = add_post_meta( $meta->meta_value, '_bbp_engagement', $meta->post_author, false ); 208 209 // Bump counts if successfully added 210 if ( ! empty( $added ) ) { 211 ++$total; 212 } 213 } 214 215 // Cleanup 216 unset( $engagements, $added ); 217 218 // Complete results 219 $result = sprintf( _n( 'Complete! %d engagements upgraded.', 'Complete! %d engagements upgraded.', $total, 'bbpress' ), $total ); 199 // Complete results 200 $result = sprintf( _n( 'Complete! %d engagements upgraded.', 'Complete! %d engagements upgraded.', $engagements, 'bbpress' ), $engagements ); 220 201 221 202 return array( 0, sprintf( $statement, $result ) );
Note: See TracChangeset
for help on using the changeset viewer.