Skip to:
Content

bbPress.org

Changeset 3572


Ignore:
Timestamp:
11/02/2011 06:23:57 PM (15 years ago)
Author:
johnjamesjacoby
Message:

Introduce functions for topic/reply per-page settings, to prevent divide by zero errors if setting is saved as '0' string. See r3540. (2.1)

Location:
branches/plugin/bbp-includes
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branches/plugin/bbp-includes/bbp-common-functions.php

    r3555 r3572  
    13711371                            'post_parent'    => 'any',
    13721372                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1373                             'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1373                            'posts_per_page' => bbp_get_replies_per_rss_page(),
    13741374                            'order'          => 'DESC',
    13751375                            'meta_query'     => $meta_query
     
    13881388                            'post_parent'    => 'any',
    13891389                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1390                             'posts_per_page' => get_option( '_bbp_topics_per_rss_page', 25 ),
     1390                            'posts_per_page' => bbp_get_topics_per_rss_page(),
    13911391                            'order'          => 'DESC',
    13921392                            'meta_query'     => $meta_query
     
    14051405                            'post_parent'    => 'any',
    14061406                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1407                             'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1407                            'posts_per_page' => bbp_get_replies_per_rss_page(),
    14081408                            'order'          => 'DESC',
    14091409                            'meta_query'     => $meta_query
     
    14381438                            'author'         => 0,
    14391439                            'post_parent'    => 'any',
    1440                             'posts_per_page' => get_option( '_bbp_topics_per_rss_page', 25 ),
     1440                            'posts_per_page' => bbp_get_topics_per_rss_page(),
    14411441                            'show_stickies'  => false,
    14421442                        );
     
    14531453                    // The query
    14541454                    $the_query = array(
    1455                         'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1455                        'posts_per_page' => bbp_get_replies_per_rss_page(),
    14561456                        'meta_query'     => array( array( ) )
    14571457                    );
  • branches/plugin/bbp-includes/bbp-core-compatibility.php

    r3566 r3572  
    17641764    // Topic tag page
    17651765    } elseif ( bbp_is_topic_tag() ) {
    1766         $posts_query->set( 'bbp_topic_tag',  get_query_var( 'term' )                  );
    1767         $posts_query->set( 'post_type',      bbp_get_topic_post_type()                );
    1768         $posts_query->set( 'posts_per_page', get_option( '_bbp_topics_per_page', 15 ) );
     1766        $posts_query->set( 'bbp_topic_tag',  get_query_var( 'term' )   );
     1767        $posts_query->set( 'post_type',      bbp_get_topic_post_type() );
     1768        $posts_query->set( 'posts_per_page', bbp_get_topics_per_page() );
    17691769    }
    17701770}
  • branches/plugin/bbp-includes/bbp-reply-functions.php

    r3505 r3572  
    12531253}
    12541254
     1255/** Settings ******************************************************************/
     1256
     1257/**
     1258 * Return the replies per page setting
     1259 *
     1260 * @since bbPress (r3540)
     1261 *
     1262 * @uses get_option() To get the setting
     1263 * @uses apply_filters() To allow the return value to be manipulated
     1264 * @return int
     1265 */
     1266function bbp_get_replies_per_page() {
     1267
     1268    // The default per setting
     1269    $default = 15;
     1270
     1271    // Get database option and cast as integer
     1272    $per = $retval = (int) get_option( '_bbp_replies_per_page', $default );
     1273
     1274    // If return val is empty, set it to default
     1275    if ( empty( $retval ) )
     1276        $retval = $default;
     1277
     1278    // Filter and return
     1279    return (int) apply_filters( 'bbp_get_replies_per_page', $retval, $per );
     1280}
     1281
     1282/**
     1283 * Return the replies per RSS page setting
     1284 *
     1285 * @since bbPress (r3540)
     1286 *
     1287 * @uses get_option() To get the setting
     1288 * @uses apply_filters() To allow the return value to be manipulated
     1289 * @return int
     1290 */
     1291function bbp_get_replies_per_rss_page() {
     1292
     1293    // The default per setting
     1294    $default = 25;
     1295
     1296    // Get database option and cast as integer
     1297    $per = $retval = (int) get_option( '_bbp_replies_per_rss_page', $default );
     1298
     1299    // If return val is empty, set it to default
     1300    if ( empty( $retval ) )
     1301        $retval = $default;
     1302
     1303    // Filter and return
     1304    return (int) apply_filters( 'bbp_get_replies_per_rss_page', $retval, $per );
     1305}
     1306
    12551307/** Feeds *********************************************************************/
    12561308
  • branches/plugin/bbp-includes/bbp-reply-template.php

    r3571 r3572  
    101101
    102102        // Max number
    103         'posts_per_page' => get_option( '_bbp_replies_per_page', 15 ),
     103        'posts_per_page' => bbp_get_replies_per_page(),
    104104
    105105        // Page Number
     
    378378
    379379        // Check if in query with pagination
    380         $reply_page     = ceil( $reply_position / get_option( '_bbp_replies_per_page', 15 ) );
     380        $reply_page     = ceil( (int) $reply_position / (int) bbp_get_replies_per_page() );
    381381
    382382        // Hash to add to end of URL
  • branches/plugin/bbp-includes/bbp-topic-functions.php

    r3506 r3572  
    28782878}
    28792879
     2880/** Settings ******************************************************************/
     2881
     2882/**
     2883 * Return the topics per page setting
     2884 *
     2885 * @since bbPress (r3540)
     2886 *
     2887 * @uses get_option() To get the setting
     2888 * @uses apply_filters() To allow the return value to be manipulated
     2889 * @return int
     2890 */
     2891function bbp_get_topics_per_page() {
     2892
     2893    // The default per setting
     2894    $default = 15;
     2895
     2896    // Get database option and cast as integer
     2897    $per = $retval = (int) get_option( '_bbp_topics_per_page', $default );
     2898
     2899    // If return val is empty, set it to default
     2900    if ( empty( $retval ) )
     2901        $retval = $default;
     2902
     2903    // Filter and return
     2904    return (int) apply_filters( 'bbp_get_topics_per_page', $retval, $per );
     2905}
     2906
     2907/**
     2908 * Return the topics per RSS page setting
     2909 *
     2910 * @since bbPress (r3540)
     2911 *
     2912 * @uses get_option() To get the setting
     2913 * @uses apply_filters() To allow the return value to be manipulated
     2914 * @return int
     2915 */
     2916function bbp_get_topics_per_rss_page() {
     2917
     2918    // The default per setting
     2919    $default = 25;
     2920
     2921    // Get database option and cast as integer
     2922    $per = $retval = (int) get_option( '_bbp_topics_per_rss_page', $default );
     2923
     2924    // If return val is empty, set it to default
     2925    if ( empty( $retval ) )
     2926        $retval = $default;
     2927
     2928    // Filter and return
     2929    return (int) apply_filters( 'bbp_get_topics_per_rss_page', $retval, $per );
     2930}
     2931
    28802932/** Feeds *********************************************************************/
    28812933
  • branches/plugin/bbp-includes/bbp-topic-template.php

    r3571 r3572  
    9494
    9595        // Topics per page
    96         'posts_per_page' => get_option( '_bbp_topics_per_page', 15 ),
     96        'posts_per_page' => bbp_get_topics_per_page(),
    9797
    9898        // Page Number
     
    681681            'base'      => $base,
    682682            'format'    => '',
    683             'total'     => ceil( (int) $total / (int) get_option( '_bbp_replies_per_page', 15 ) ),
     683            'total'     => ceil( (int) $total / (int) bbp_get_replies_per_page() ),
    684684            'current'   => 0,
    685685            'prev_next' => false,
Note: See TracChangeset for help on using the changeset viewer.