Skip to:
Content

bbPress.org


Ignore:
Timestamp:
09/13/2017 05:14:59 PM (8 years ago)
Author:
johnjamesjacoby
Message:

Classes: add more author & moderator related CSS classes to helper functions.

This change adds classes to forums, topics, and replies where the respective author is also a moderator of the nearest parent forum.

See #459.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/includes/forums/template.php

    r6683 r6692  
    729729        $subforum_classes      = array( 'bbp-forum-link' );
    730730        $subforum_classes      = apply_filters( 'bbp_list_forums_subforum_classes', $subforum_classes, $sub_forum->ID );
     731
     732        // This could use bbp_get_forum_class() eventually...
    731733        $subforum_classes_attr = 'class="' . implode( ' ', array_map( 'esc_attr', $subforum_classes ) ) . '"';
    732734
     
    17951797     */
    17961798    function bbp_get_forum_class( $forum_id = 0, $classes = array() ) {
    1797         $bbp       = bbpress();
    1798         $forum_id  = bbp_get_forum_id( $forum_id );
    1799         $parent_id = bbp_get_forum_parent_id( $forum_id );
    1800         $classes   = array_filter( (array) $classes );
    1801         $count     = isset( $bbp->forum_query->current_post )
     1799        $bbp        = bbpress();
     1800        $forum_id   = bbp_get_forum_id( $forum_id );
     1801        $parent_id  = bbp_get_forum_parent_id( $forum_id );
     1802        $author_id  = bbp_get_forum_author_id( $forum_id );
     1803        $status     = bbp_get_forum_status( $forum_id );
     1804        $visibility = bbp_get_forum_visibility( $forum_id );
     1805        $classes    = array_filter( (array) $classes );
     1806        $count      = isset( $bbp->forum_query->current_post )
    18021807            ? (int) $bbp->forum_query->current_post
    18031808            : 1;
    18041809
     1810        //  Stripes
     1811        $even_odd = ( $count % 2 )
     1812            ? 'even'
     1813            : 'odd';
     1814
     1815        // User is moderator of forum
     1816        $forum_moderator = ( bbp_is_user_forum_moderator( $author_id, $forum_id ) === $author_id )
     1817            ? 'forum-mod'
     1818            : '';
     1819
     1820        // Is forum a non-postable category?
     1821        $category = bbp_is_forum_category( $forum_id )
     1822            ? 'status-category'
     1823            : '';
     1824
     1825        // Forum has children?
     1826        $subs = bbp_get_forum_subforum_count( $forum_id )
     1827            ? 'bbp-has-subforums'
     1828            : '';
     1829
     1830        // Forum has parent?
     1831        $parent = ! empty( $parent_id )
     1832            ? 'bbp-parent-forum-' . $parent_id
     1833            : '';
     1834
    18051835        // Get forum classes
    18061836        $forum_classes = array(
    1807             'loop-item-' . $count,
    1808             ( $count % 2 )                            ? 'even'              : 'odd',
    1809             bbp_is_forum_category( $forum_id )        ? 'status-category'   : '',
    1810             bbp_get_forum_subforum_count( $forum_id ) ? 'bbp-has-subforums' : '',
    1811             ! empty( $parent_id )                     ? 'bbp-parent-forum-' . $parent_id : '',
    1812             'bbp-forum-status-'     . bbp_get_forum_status( $forum_id ),
    1813             'bbp-forum-visibility-' . bbp_get_forum_visibility( $forum_id )
     1837            'loop-item-'            . $count,
     1838            'bbp-forum-status-'     . $status,
     1839            'bbp-forum-visibility-' . $visibility,
     1840            $even_odd,
     1841            $forum_moderator,
     1842            $category,
     1843            $subs,
     1844            $parent
    18141845        );
    18151846
Note: See TracChangeset for help on using the changeset viewer.