Skip to content

Commit bd1f47c

Browse files
committed
v2.4.9
1 parent b21da25 commit bd1f47c

File tree

93 files changed

+416
-890
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+416
-890
lines changed

addons/badges/assets/css/front.css

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,23 @@
1-
.the-badge {
1+
.mycred-users-badges .the-badge.vertical {
22
display: flex;
3-
align-items: center;
4-
justify-content: space-between;
3+
margin-bottom: 10px;
54
}
65

7-
hr.badge-line {
8-
9-
margin-top: 10px !important;
6+
.mycred-users-badges .the-badge.horizontal {
7+
display: inline-flex;
8+
margin-right: 10px;
9+
margin-bottom: 10px;
1010
}
1111

12-
.page-excerpt {
13-
14-
width: 100%;
15-
margin-left:10px;
12+
.mycred-users-badges .the-badge .mycred-badge-content {
13+
display: table;
14+
margin-left: 15px;
1615
}
1716

18-
19-
.page-excerpt {
20-
21-
width: 100%;
22-
margin-left:10px;
17+
.mycred-users-badges .the-badge .mycred-badge-content h4.title {
18+
margin: 0;
2319
}
2420

25-
.demo-badge-title {
26-
margin-left: 20px;
27-
width: 100%;
21+
.mycred-users-badges .the-badge .mycred-badge-content p.excerpt {
22+
margin: 10px 0 0 0;
2823
}

addons/badges/includes/mycred-badge-functions.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1306,13 +1306,17 @@ function mycred_badge_show_levels( $user_id, $badge, $settings = NULL ) {
13061306

13071307
if( ! empty( $settings->core["badges"]["show_levels"] ) || $badge->open_badge && ! empty( $settings->core["badges"]["show_steps_to_achieve"] ) ) {
13081308

1309+
$content .= '<div class="mycred-badge-page-levels-container">';
1310+
13091311
if ( ! $badge->open_badge )
13101312
$content .= "<h3>" . __("Levels", "mycred") . "</h3>";
13111313
else
13121314
$content .= "<h3>" . __("Requirement", "mycred") . "</h3>";
13131315

13141316
$levels = mycred_show_badge_requirements( $badge->post_id );
13151317

1318+
$content .= '<div class="mycred-badge-page-levels">';
1319+
13161320
foreach ( $levels as $id => $level ) {
13171321

13181322
$level_image_url = $level["image"];
@@ -1328,13 +1332,11 @@ function mycred_badge_show_levels( $user_id, $badge, $settings = NULL ) {
13281332
if ( ! $badge->open_badge ) {
13291333

13301334
if ( ! empty( $level_image_url ) )
1331-
$content .= '<img src="'.$level_image_url.'" class="mycred-level-image mycred-float-left" />';
1335+
$content .= '<img src="'.$level_image_url.'" class="mycred-level-image" />';
13321336

13331337
$content .= "<h4>$heading</h4>";
13341338
}
13351339

1336-
$content .= "<div class='clear'></div>";
1337-
13381340
if ( ! empty( $settings->core["badges"]["show_steps_to_achieve"] ) )
13391341
$content .= mycred_badge_level_req_check( $badge->post_id, $id );
13401342

@@ -1348,7 +1350,11 @@ function mycred_badge_show_levels( $user_id, $badge, $settings = NULL ) {
13481350
$content .= '</div>';
13491351
}
13501352

1351-
$content .= '<div class="clear"></div>';
1353+
$content .= '<div class="mycred-clearfix"></div>';
1354+
1355+
$content .= '</div>';
1356+
1357+
$content .= '</div>';
13521358

13531359
}
13541360

addons/badges/includes/mycred-badge-shortcodes.php

Lines changed: 58 additions & 176 deletions
Original file line numberDiff line numberDiff line change
@@ -1,211 +1,99 @@
11
<?php
22
if ( ! defined( 'myCRED_VERSION' ) ) exit;
33

4-
if (! function_exists('mycred_render_my_badges') ) :
4+
/**
5+
* Shortcode: mycred_my_badges
6+
* Allows you to show the current users earned badges.
7+
* @since 1.5
8+
* @version 1.2.1
9+
*/
10+
if ( ! function_exists( 'mycred_render_my_badges' ) ) :
511
function mycred_render_my_badges( $atts, $content = '' ) {
612

7-
extract(
8-
shortcode_atts(
9-
array(
10-
'show' => 'earned',
11-
'width' => MYCRED_BADGE_WIDTH,
12-
'height' => MYCRED_BADGE_HEIGHT,
13-
'user_id' => 'current',
14-
'title' => '',
15-
'post_excerpt' => ''
16-
), $atts, MYCRED_SLUG . '_my_badges'
17-
)
18-
);
19-
20-
if ( ! is_user_logged_in() && $user_id == 'current' ) {
13+
extract( shortcode_atts( array(
14+
'show' => 'earned',
15+
'width' => MYCRED_BADGE_WIDTH,
16+
'height' => MYCRED_BADGE_HEIGHT,
17+
'user_id' => 'current',
18+
'title' => 0,
19+
'excerpt' => 0,
20+
'display' => 'vertical'
21+
), $atts, MYCRED_SLUG . '_my_badges' ) );
22+
23+
if ( ! is_user_logged_in() && $user_id == 'current' )
2124
return $content;
22-
}
23-
24-
$all_badges = mycred_get_badge_ids();
25-
$profile_user_id = mycred_get_user_id( $user_id );
26-
$users_badges = mycred_get_users_badges( $profile_user_id, true );
27-
$user_id = mycred_get_user_id( $user_id );
28-
29-
ob_start();
30-
31-
echo '<div class="row" id="mycred-users-badges"><div class="col-xs-12">';
32-
33-
// Show only badges that we have earned
34-
if ( $show == 'earned' ) {
35-
36-
foreach ( $all_badges as $badge_id ) {
37-
38-
echo '<div class="the-badge">';
39-
40-
$page_id = get_page($badge_id);
41-
$badge_id = absint( $badge_id );
42-
$has_earned = mycred_get_badge( $badge_id );
43-
$badge = mycred_get_badge( $badge_id );
44-
$users_badges = mycred_get_users_badges($profile_user_id );
45-
$mycred = mycred();
46-
47-
if ( array_key_exists( $badge_id, $users_badges ) ) {
48-
49-
$earned = 1;
50-
$earned_level = $users_badges[ $badge_id ];
51-
$badge_image = $badge->get_image( $earned_level );
52-
53-
}
5425

55-
if( $has_earned ) {
26+
$user_id = mycred_get_user_id( $user_id );
27+
$all_badges = mycred_get_badge_ids();
28+
$users_badges = mycred_get_users_badges( $user_id );
29+
$css_classes = in_array( $display, array( 'vertical', 'horizontal' ) ) ? $display : 'vertical';
5630

57-
$badge_title = $has_earned->title;
58-
$badge_img = $has_earned->main_image;
59-
$level_image = $has_earned->level_image;
60-
$show_img = $has_earned->user_has_badge( $profile_user_id );
31+
wp_enqueue_style( 'mycred-badge-front-style' );
6132

62-
if( $show_img ) {
63-
64-
$earned_badge_image = ! empty( $has_earned->level_image ) ? $has_earned->level_image : $has_earned->main_image;
65-
66-
echo '<div class="demo-badge-image">' . wp_kses_post( $earned_badge_image ) . '</div>';
67-
68-
if( $title == 'show' ) {
69-
70-
echo '<div class="demo-badge-title">' . esc_html( $badge_title ) . ' '.'</div>';
33+
ob_start();
7134

72-
}
73-
else {
35+
echo '<div class="mycred-users-badges">';
7436

75-
echo '<div class="demo-badge-title" style="display:none;">' . esc_html( $badge_title ) . ' '.'</div>';
37+
foreach ( $all_badges as $badge_id ) {
7638

77-
}
39+
$user_has_earned = array_key_exists( $badge_id, $users_badges );
7840

79-
if( $post_excerpt == 'show' ) {
41+
if ( $show == 'earned' && ! $user_has_earned ) continue;
8042

81-
echo '<div class="page-excerpt">' . wp_kses_post( $page_id->post_excerpt ) . ' '.'</div>';
43+
$css_classes = $user_has_earned ? $display . ' earned' : $display;
8244

83-
}
84-
else {
85-
86-
echo '<div class="page-excerpt" style="display:none;">' . wp_kses_post( $page_id->post_excerpt ) . ' '.'</div>';
87-
88-
}
45+
echo '<div class="the-badge '. esc_attr( $css_classes ) .'">';
8946

90-
}
47+
$level = $user_has_earned ? $users_badges[ $badge_id ] : NULL;
48+
$badge = mycred_get_badge( $badge_id, $level );
49+
$badge->image_width = $width;
50+
$badge->image_height = $height;
9151

92-
}
52+
if ( $user_has_earned ) {
9353

94-
}
95-
96-
}
97-
// Show all badges highlighting the ones we earned
98-
elseif ( $show == 'all' ) {
99-
100-
$users_badges = mycred_get_users_badges( $user_id );
101-
$all_badges = mycred_get_badge_ids();
102-
103-
foreach ( $all_badges as $badge_id ) {
104-
105-
echo '<div class="the-badge">';
106-
107-
// User has not earned badge
108-
if ( ! array_key_exists( $badge_id, $users_badges ) ) {
109-
110-
$badge = mycred_get_badge( $badge_id );
111-
$page_id = get_page( $badge_id );
112-
$badge->image_width = $width;
113-
$badge->image_height = $height;
114-
$badge_title = $badge->title;
115-
$badge_img = $badge->main_image;
54+
if ( $badge->level_image !== false )
55+
echo wp_kses_post( $badge->get_image( $level ) );
11656

117-
if ( $badge->main_image !== false ) {
118-
119-
echo '<div class="demo-badge-image">' . wp_kses_post( $badge_img ) . '</div>';
120-
121-
if( $title == 'show' ) {
122-
123-
echo '<div class="demo-badge-title">' . esc_html( $badge_title ) . ' '.'</div>';
124-
125-
} else {
126-
127-
echo '<div class="demo-badge-title" style="display:none;">' . esc_html( $badge_title ) . ' '.'</div>';
128-
129-
}
130-
131-
if( $post_excerpt == 'show' ) {
132-
133-
echo '<div class="page-excerpt">' . wp_kses_post( $page_id->post_excerpt ) . ' '.'</div>';
134-
135-
}
136-
else {
137-
138-
echo '<div class="page-excerpt" style="display:none;">' . wp_kses_post( $page_id->post_excerpt ) . ' '.'</div>';
139-
140-
}
141-
142-
}
143-
144-
}
145-
// User has earned badge
146-
else {
57+
}
58+
else {
14759

148-
$level = $users_badges[ $badge_id ];
149-
$badge = mycred_get_badge( $badge_id, $level );
150-
$badge->image_width = $width;
151-
$badge->image_height = $height;
152-
$badge_page_id = get_page( $badge_id );
60+
if ( $badge->main_image !== false )
61+
echo wp_kses_post( $badge->get_image( 'main' ) );
15362

154-
if ( $badge->level_image !== false ) {
63+
}
15564

156-
157-
echo '<div class="demo-badge-image">' . wp_kses_post( $badge->get_image( $level ) ) . '</div>';
65+
if ( $title == 1 || $excerpt == 1 ) {
15866

159-
if( $title == 'show' ) {
160-
161-
echo '<div class="demo-badge-title">' . esc_html( $badge->title ) . ' '.'</div>';
67+
echo '<div class="mycred-badge-content">';
16268

163-
}
164-
else {
165-
166-
echo '<div class="demo-badge-title" style="display:none;">' . esc_html( $badge->title ) . ' '.'</div>';
69+
if ( $title == 1 && ! empty( $badge->title ) )
70+
echo '<h4 class="title">' . esc_html( $badge->title ) . '</h4>';
16771

168-
}
72+
if ( $excerpt == 1 ) {
16973

170-
if( $post_excerpt == 'show' ) {
171-
172-
echo '<div class="page-excerpt">' . wp_kses_post( $badge_page_id->post_excerpt ) . ' '.'</div>';
74+
$badge_excerpt = get_the_excerpt( $badge_id );
17375

174-
}
175-
else {
176-
177-
echo '<div class="page-excerpt" style="display:none;">' . wp_kses_post( $badge_page_id->post_excerpt ) . ' '.'</div>';;
178-
179-
}
180-
181-
}
76+
if ( ! empty( $badge_excerpt ) )
77+
echo '<p class="excerpt">' . esc_html( $badge_excerpt ) . '</p>';
18278

183-
}
79+
}
18480

18581
echo '</div>';
18682

187-
if( $title == 'show' || $post_excerpt == 'show' ) {
188-
189-
echo '<hr class="badge-line">';
190-
191-
}
192-
else {
193-
194-
echo '';
195-
196-
}
197-
19883
}
19984

85+
echo '</div>';
86+
20087
}
201-
echo '</div></div>';
88+
89+
echo '</div>';
20290

20391
$output = ob_get_contents();
20492
ob_end_clean();
20593

206-
return apply_filters('mycred_my_badges', $output, $user_id);
94+
return apply_filters( 'mycred_my_badges', $output, $user_id );
20795

208-
}
96+
}
20997
endif;
21098

21199
/**
@@ -409,10 +297,4 @@ function mycred_render_badge_evidence( $atts = '' ) {
409297

410298
return $content;
411299
}
412-
endif;
413-
414-
add_action( 'wp_enqueue_scripts', 'enqueue_badge_front_shortcode_scripts' );
415-
416-
function enqueue_badge_front_shortcode_scripts() {
417-
wp_enqueue_style( 'mycred-badge-front-style', plugins_url( 'assets/css/front.css', myCRED_BADGE ), array(), myCRED_BADGE_VERSION , 'all');
418-
}
300+
endif;

addons/badges/myCRED-addon-badges.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,8 @@ public function module_init() {
167167
public function enqueue_front_scripts() {
168168

169169
wp_enqueue_script( 'mycred-badge-front', plugins_url( 'assets/js/front.js', myCRED_BADGE ), array('jquery'), myCRED_BADGE_VERSION );
170+
wp_register_style( 'mycred-badge-front-style', plugins_url( 'assets/css/front.css', myCRED_BADGE ), array(), myCRED_BADGE_VERSION , 'all' );
171+
170172
}
171173

172174
/**
@@ -1764,6 +1766,9 @@ public function badge_user_screen( $user ) {
17641766

17651767
$badge_id = absint( $badge_id );
17661768
$badge = mycred_get_badge( $badge_id );
1769+
1770+
if ( empty( $badge ) ) continue;
1771+
17671772
$earned = 0;
17681773
$earned_level = 0;
17691774
$badge_image = $badge->main_image;
@@ -2108,7 +2113,7 @@ public function mycred_badge_page_template( $content ) {
21082113

21092114
global $post;
21102115

2111-
if ( is_single() && $post->post_type == MYCRED_BADGE_KEY ) {
2116+
if ( is_single() && ! empty( $post->post_type ) && $post->post_type == MYCRED_BADGE_KEY ) {
21122117

21132118
$mycred = mycred();
21142119

0 commit comments

Comments
 (0)