Skip to:
Content

bbPress.org

Changeset 3540


Ignore:
Timestamp:
10/10/2011 05:01:21 AM (13 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.

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

Legend:

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

    r3516 r3540  
    13741374                            'post_parent'    => 'any',
    13751375                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1376                             'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1376                            'posts_per_page' => bbp_get_replies_per_rss_page(),
    13771377                            'order'          => 'DESC',
    13781378                            'meta_query'     => $meta_query
     
    13911391                            'post_parent'    => 'any',
    13921392                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1393                             'posts_per_page' => get_option( '_bbp_topics_per_rss_page', 25 ),
     1393                            'posts_per_page' => bbp_get_topics_per_rss_page(),
    13941394                            'order'          => 'DESC',
    13951395                            'meta_query'     => $meta_query
     
    14081408                            'post_parent'    => 'any',
    14091409                            'post_status'    => join( ',', array( bbp_get_public_status_id(), bbp_get_closed_status_id() ) ),
    1410                             'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1410                            'posts_per_page' => bbp_get_replies_per_rss_page(),
    14111411                            'order'          => 'DESC',
    14121412                            'meta_query'     => $meta_query
     
    14411441                            'author'         => 0,
    14421442                            'post_parent'    => 'any',
    1443                             'posts_per_page' => get_option( '_bbp_topics_per_rss_page', 25 ),
     1443                            'posts_per_page' => bbp_get_topics_per_rss_page(),
    14441444                            'show_stickies'  => false,
    14451445                        );
     
    14561456                    // The query
    14571457                    $the_query = array(
    1458                         'posts_per_page' => get_option( '_bbp_replies_per_rss_page', 25 ),
     1458                        'posts_per_page' => bbp_get_replies_per_rss_page(),
    14591459                        'meta_query'     => array( array( ) )
    14601460                    );
  • branches/2.0/bbp-includes/bbp-core-compatibility.php

    r3516 r3540  
    16721672    // Topic tag page
    16731673    } elseif ( bbp_is_topic_tag() ) {
    1674         $posts_query->set( 'bbp_topic_tag',  get_query_var( 'term' )                  );
    1675         $posts_query->set( 'post_type',      bbp_get_topic_post_type()                );
    1676         $posts_query->set( 'posts_per_page', get_option( '_bbp_topics_per_page', 15 ) );
     1674        $posts_query->set( 'bbp_topic_tag',  get_query_var( 'term' )   );
     1675        $posts_query->set( 'post_type',      bbp_get_topic_post_type() );
     1676        $posts_query->set( 'posts_per_page', bbp_get_topics_per_page() );
    16771677    }
    16781678}
  • branches/2.0/bbp-includes/bbp-reply-functions.php

    r3505 r3540  
    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/2.0/bbp-includes/bbp-reply-template.php

    r3506 r3540  
    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/2.0/bbp-includes/bbp-topic-functions.php

    r3506 r3540  
    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/2.0/bbp-includes/bbp-topic-template.php

    r3505 r3540  
    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
     
    679679            'base'      => $base,
    680680            'format'    => '',
    681             'total'     => ceil( (int) $total / (int) get_option( '_bbp_replies_per_page', 15 ) ),
     681            'total'     => ceil( (int) $total / (int) bbp_get_replies_per_page() ),
    682682            'current'   => 0,
    683683            'prev_next' => false,
Note: See TracChangeset for help on using the changeset viewer.