PluginProbe
wpForo Forum / 3.2.0
wpForo Forum v3.2.0
3.2.1 3.2.0 3.1.7 3.1.6 3.1.5 3.1.4 3.1.2 3.1.1 3.1.0 3.0.9 3.0.8 3.0.7 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.10 All 141 releases
wpforo / themes / classic / layouts / 3 / forum.php

forum.php in wpForo Forum 3.2.0, at themes/classic/layouts/3/forum.php

167 lines 8.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 // Exit if accessed directly
3 if( ! defined( 'ABSPATH' ) ) exit;
4
5 /**
6 *
7 * @layout: QA
8 * @url: http://gvectors.com/
9 * @version: 1.0.0
10 * @author: gVectors Team
11 * @description: Q&A Layout turns your forum to a powerful question and answer discussion board.
12 *
13 */
14 ?>
15
16 <div class="wpfl-3 wpforo-section">
17 <div class="wpforo-category">
18 <div class="cat-title" title="<?php echo esc_attr( strip_tags( $cat['description'] ) ); ?>"><?php echo esc_html( $cat['title'] ); ?></div>
19 <div class="cat-stat-posts"><?php wpforo_phrase( 'Posts' ) ?></div>
20 <div class="cat-stat-answers"><?php wpforo_phrase( 'Answers' ) ?></div>
21 <div class="cat-stat-questions"><?php wpforo_phrase( 'Questions' ) ?></div>
22 <br class="wpf-clear"/>
23 </div>
24
25 <?php
26 $forum_list = false;
27 foreach( $forums as $key => $forum ) :
28 if( ! WPF()->perm->forum_can( 'vf', $forum['forumid'] ) ) continue;
29
30 $forum_list = true;
31
32 $sub_forums = WPF()->forum->get_forums( [ "parentid" => $forum['forumid'], "type" => 'forum' ] );
33 $has_sub_forums = is_array( $sub_forums ) && ! empty( $sub_forums );
34
35 $topics = WPF()->topic->get_topics(
36 [ "forumid" => $forum['forumid'], "orderby" => "type, modified", "order" => "DESC", "row_count" => wpforo_setting( 'forums', 'layout_qa_intro_topics_count' ) ]
37 );
38 $has_topics = is_array( $topics ) && ! empty( $topics );
39
40 $data = wpforo_forum( $forum['forumid'], 'childs' );
41 $counts = wpforo_forum( $forum['forumid'], 'counts' );
42
43 $forum_url = wpforo_forum( $forum['forumid'], 'url' );
44 $topic_toglle = wpforo_setting( 'forums', 'layout_qa_intro_topics_toggle' );
45
46 if( ! empty( $forum['icon'] ) ) {
47 $forum['icon'] = trim( (string) $forum['icon'] );
48 if( strpos( $forum['icon'], ' ' ) === false ) $forum['icon'] = 'fas ' . $forum['icon'];
49 }
50 $forum_icon = ( isset( $forum['icon'] ) && $forum['icon'] ) ? $forum['icon'] : 'fas fa-comments';
51 ?>
52
53 <div class="forum-wrap <?php wpforo_unread( $forum['forumid'], 'forum' ) ?>">
54 <div class="wpforo-forum">
55 <div class="wpforo-forum-icon"><i class="<?php echo esc_attr( $forum_icon ) ?> wpfcl-0"></i></div>
56 <div class="wpforo-forum-info">
57 <h3 class="wpforo-forum-title"><a href="<?php echo esc_url( (string) $forum_url ) ?>"><?php echo esc_html( $forum['title'] ); ?></a> <?php wpforo_viewing( $forum ); ?></h3>
58 <div class="wpforo-forum-description"><?php echo wp_kses_post( $forum['description'] ) ?></div>
59
60 <?php if( $has_sub_forums ) : ?>
61
62 <div class="wpforo-subforum">
63 <ul>
64 <li class="first"><?php wpforo_phrase( 'Subforums' ) ?>:</li>
65
66 <?php foreach( $sub_forums as $sub_forum ) :
67 if( ! WPF()->perm->forum_can( 'vf', $sub_forum['forumid'] ) ) continue;
68 if( ! empty( $sub_forum['icon'] ) ) {
69 $sub_forum['icon'] = trim( (string) $sub_forum['icon'] );
70 if( strpos( $sub_forum['icon'], ' ' ) === false ) $sub_forum['icon'] = 'fas ' . $sub_forum['icon'];
71 }
72 $sub_forum_icon = ( isset( $sub_forum['icon'] ) && $sub_forum['icon'] ) ? $sub_forum['icon'] : 'fas fa-comments'; ?>
73
74 <li class="<?php wpforo_unread( $sub_forum['forumid'], 'forum' ) ?>"><i class="<?php echo esc_attr( $sub_forum_icon ) ?> wpfcl-0"></i>&nbsp;<a
75 href="<?php echo esc_url( (string) wpforo_forum( $sub_forum['forumid'], 'url' ) ) ?>"><?php echo esc_html(
76 $sub_forum['title']
77 ); ?></a> <?php wpforo_viewing( $sub_forum ); ?></li>
78
79 <?php endforeach; ?>
80
81 </ul>
82 <br class="wpf-clear"/>
83 </div><!-- wpforo-subforum -->
84
85 <?php endif; ?>
86
87 <?php if( $has_topics ) : ?>
88
89 <div class="wpforo-forum-footer">
90 <span class="wpfcl-5"><?php wpforo_phrase( 'Recent Questions' ) ?></span> &nbsp;
91 <i id="img-arrow-<?php echo intval( $forum['forumid'] ) ?>" class="topictoggle fas fa-chevron-<?php echo( $topic_toglle == 1 ? 'up' : 'down' ); ?>"
92 style="color: rgb(67, 166, 223);font-size: 14px; cursor: pointer;"></i> &nbsp;&nbsp;
93 </div>
94
95 <?php endif ?>
96
97 </div><!-- wpforo-forum-info -->
98
99 <div class="wpforo-forum-stat-questions"><?php echo wpforo_print_number( $counts['topics'] ) ?></div>
100 <div class="wpforo-forum-stat-answers"><?php echo wpforo_print_number( WPF()->topic->get_sum_answer( $data ) ) ?></div>
101 <div class="wpforo-forum-stat-posts"><?php echo wpforo_print_number( $counts['posts'] ) ?></div>
102 </div><!-- wpforo-forum -->
103
104
105 <?php if( $has_topics ) : ?>
106
107 <div class="wpforo-last-topics-<?php echo intval( $forum['forumid'] ) ?>" style="display: <?php echo( $topic_toglle ? 'block' : 'none' ); ?>;">
108 <div class="wpforo-last-topics-tab"></div>
109 <div class="wpforo-last-topics-list">
110 <ul>
111 <?php foreach( $topics as $topic ) : ?>
112 <?php $member = wpforo_member( $topic ); ?>
113 <?php $topic_url = wpforo_topic( $topic['topicid'], 'url' ); ?>
114 <?php if( $topic_url && ! empty( $member ) ): ?>
115 <li class="<?php wpforo_unread( $topic['topicid'], 'topic' ) ?>">
116 <div class="wpforo-last-topic wpfcl-2">
117 <div class="votes">
118 <div class="count <?php echo $topic['votes'] == 0 ? "wpfcl-6" : "wpfbg-4 wpfcl-3" ?>"><?php echo intval( $topic['votes'] ) ?></div>
119 <div class="wpforo-label <?php echo $topic['votes'] == 0 ? "wpfcl-6" : "wpfbg-4 wpfcl-3" ?>"><?php wpforo_phrase( 'Votes' ) ?></div>
120 </div>
121 <div class="answers">
122 <div class="count <?php echo $topic['answers'] == 0 ? "wpfcl-5" : "wpfbg-5 wpfcl-3" ?>"><?php echo intval( $topic['answers'] ) ?></div>
123 <div class="wpforo-label <?php echo $topic['answers'] == 0 ? "wpfcl-5" : "wpfbg-5 wpfcl-3" ?>"><?php wpforo_phrase( 'Answers' ) ?></div>
124 </div>
125 <div class="views">
126 <div class="count"><?php echo intval( $topic['views'] ) ?></div>
127 <div class="wpforo-label"><?php wpforo_phrase( 'Views' ) ?></div>
128 </div>
129 </div>
130 <div class="wpforo-last-topic-title">
131 <?php wpforo_topic_title( $topic, $topic_url, '{p}{au}{tc}{/a}{n}', true, '', wpforo_setting( 'forums', 'layout_qa_intro_topics_length' ) ) ?><br/>
132 <span class="wpforo-last-topic-info wpfcl-2"><?php wpforo_member_link( $member, 'by' ); ?>, <?php wpforo_date( $topic['modified'] ); ?></span>
133 </div>
134 <div class="wpforo-last-topic-posts wpfcl-2">
135 <div class="count"><?php echo intval( $topic['posts'] ) ?></div>
136 <div class="wpforo-label"><?php wpforo_phrase( 'replies' ) ?></div>
137 </div>
138 </li>
139 <?php endif; ?>
140 <?php endforeach; ?>
141 <?php if( intval( $forum['topics'] ) > wpforo_setting( 'forums', 'layout_qa_intro_topics_count' ) ): ?>
142 <li>
143 <div class="wpforo-last-topic-title wpf-vat">
144 <a href="<?php echo esc_url( (string) $forum_url ) ?>"><?php wpforo_phrase( 'view all questions', true, 'lower' ); ?> <i class="fas fa-angle-right"
145 aria-hidden="true"></i></a>
146 </div>
147 </li>
148 <?php endif ?>
149 </ul>
150 </div><!-- wpforo-last-topics-list -->
151 <br class="wpf-clear"/>
152 </div><!-- wpforo-last-topics -->
153
154 <?php endif; ?>
155
156 </div><!-- forum-wrap -->
157
158 <?php do_action( 'wpforo_loop_hook', $key ) ?>
159
160 <?php endforeach; ?> <!-- $forums as $forum -->
161
162 <?php if( ! $forum_list ): ?>
163 <?php do_action( 'wpforo_forum_loop_no_forums', $cat ); ?>
164 <?php endif; ?>
165
166 </div>
167