Ticket #7741: 7741.01.patch
| File 7741.01.patch, 67.4 KB (added by , 8 years ago) |
|---|
-
Gruntfile.js
diff --git a/Gruntfile.js b/Gruntfile.js index 3a4ef68e3..a28346519 100644
a b module.exports = function( grunt ) { 23 23 // SASS generated "Twenty*"" CSS files 24 24 BP_SCSS_CSS_FILES = [ 25 25 '!bp-templates/bp-legacy/css/twenty*.css', 26 '!bp-templates/bp-nouveau/css/buddypress.css' 26 '!bp-templates/bp-nouveau/css/buddypress.css', 27 '!bp-core/admin/css/hello.css' 27 28 ], 28 29 29 30 stylelintConfigCss = require('stylelint-config-wordpress/index.js'), … … module.exports = function( grunt ) { 89 90 indentType: 'tab', 90 91 indentWidth: '1' 91 92 }, 92 styles: {93 legacy: { 93 94 cwd: SOURCE_DIR, 94 95 extDot: 'last', 95 96 expand: true, … … module.exports = function( grunt ) { 106 107 flatten: true, 107 108 src: ['bp-templates/bp-nouveau/sass/buddypress.scss'], 108 109 dest: SOURCE_DIR + 'bp-templates/bp-nouveau/css/' 110 }, 111 admin: { 112 cwd: SOURCE_DIR, 113 extDot: 'last', 114 expand: true, 115 ext: '.css', 116 flatten: true, 117 src: ['bp-core/admin/sass/*.scss'], 118 dest: SOURCE_DIR + 'bp-core/admin/css/' 109 119 } 110 120 }, 111 121 rtlcss: { … … module.exports = function( grunt ) { 227 237 }, 228 238 expand: true, 229 239 cwd: SOURCE_DIR, 230 src: [ ' bp-templates/bp-legacy/css/*.scss' ]240 src: [ '**/*.scss' ] 231 241 } 232 242 }, 233 243 cssmin: { -
src/bp-core/admin/bp-core-admin-functions.php
diff --git a/src/bp-core/admin/bp-core-admin-functions.php b/src/bp-core/admin/bp-core-admin-functions.php index 82f82e497..609453741 100644
a b function bp_do_activation_redirect() { 357 357 return; 358 358 } 359 359 360 $query_args = array( 'page' => 'bp-about');360 $query_args = array(); 361 361 if ( get_transient( '_bp_is_new_install' ) ) { 362 362 $query_args['is_new_install'] = '1'; 363 363 delete_transient( '_bp_is_new_install' ); 364 364 } 365 365 366 // Redirect to BuddyPress about page.367 wp_safe_redirect( add_query_arg( $query_args, bp_get_admin_url( ' index.php' ) ) );366 // Redirect to dashboard and trigger the Hello screen. 367 wp_safe_redirect( add_query_arg( $query_args, bp_get_admin_url( '?hello=buddypress' ) ) ); 368 368 } 369 369 370 370 /** UI/Styling ****************************************************************/ … … function bp_core_get_admin_tabs( $active_tab = '' ) { 421 421 'href' => bp_get_admin_url( add_query_arg( array( 'page' => 'bp-components' ), 'admin.php' ) ), 422 422 'name' => __( 'Components', 'buddypress' ) 423 423 ), 424 '2' => array( 425 'href' => bp_get_admin_url( add_query_arg( array( 'page' => 'bp-settings' ), 'admin.php' ) ), 426 'name' => __( 'Options', 'buddypress' ) 427 ), 424 428 '1' => array( 425 429 'href' => bp_get_admin_url( add_query_arg( array( 'page' => 'bp-page-settings' ), 'admin.php' ) ), 426 430 'name' => __( 'Pages', 'buddypress' ) 427 431 ), 428 ' 2' => array(429 'href' => bp_get_admin_url( add_query_arg( array( 'page' => 'bp- settings' ), 'admin.php' ) ),430 'name' => __( ' Options', 'buddypress' )432 '3' => array( 433 'href' => bp_get_admin_url( add_query_arg( array( 'page' => 'bp-credits' ), 'admin.php' ) ), 434 'name' => __( 'Credits', 'buddypress' ) 431 435 ), 432 436 ); 433 437 -
src/bp-core/admin/css/common-rtl.css
diff --git a/src/bp-core/admin/css/common-rtl.css b/src/bp-core/admin/css/common-rtl.css index 8485c92c2..8df9db450 100644
a b TABLE OF CONTENTS: 10 10 -------------------------------------------------------------------------------- 11 11 1.0 Welcome Screen 12 12 1.1 Version Badge 13 1.2 About Panel 14 1.2.1 Headline Feature 15 1.2.2 Features Section 16 1.2.3 Changelog Section 13 1.2 --- 14 1.3 Credits Panel 17 15 2.0 Dashicons 18 16 2.1 Top level menus 19 17 2.2 Settings - Components … … TABLE OF CONTENTS: 43 41 content: "\f448"; 44 42 } 45 43 46 .about-wrap .bp-badge { 47 position: absolute; 48 top: 0; 49 left: 0; 50 } 51 52 .index_page_bp-credits code, 44 .settings_page_bp-credits code, 53 45 .index_page_bp-about code { 54 46 background-color: #e0e0e0; 55 47 color: #636363; 56 48 font-size: 1em; 57 49 } 58 50 59 @media only screen and (max-width: 500px) {60 61 .about-wrap .bp-badge {62 position: relative;63 margin: 10px auto;64 top: auto;65 left: auto;66 }67 }68 69 51 /* 70 * 1.2 About Panel 52 * 1.3 Credits Panel 53 * 54 * Taken from WP 4.9.5. 71 55 */ 72 73 /* 74 * 1.2.1 Headline Feature 75 */ 76 .buddypress .bp-headline-feature { 77 margin-bottom: 2em; 78 margin-top: 3em; 79 padding: 2em 3em; 80 } 81 82 .buddypress .bp-headline { 83 margin: 0 auto; 84 width: 45em; 85 } 86 87 .buddypress .bp-headline span.dashicons { 88 background-color: #f1f1f1; 89 color: #d84800; 90 clear: right; 91 font-size: 100px; 92 float: right; 93 height: 100px; 94 line-height: 100px; 95 margin: 0 0 15px 15px; 96 text-align: center; 97 width: 100px; 98 } 99 100 .buddypress .bp-headline-feature .headline-title { 101 font-size: 2.2em; 102 font-weight: 300; 103 line-height: 2; 104 margin: 0 0 1em; 105 text-align: center; 106 } 107 108 .buddypress .bp-headline-feature p { 109 font-size: 1.15em; 110 margin: 1.15em 0 0.6em auto; 56 .bp-about-wrap { 57 position: relative; 58 max-width: 1050px; 59 font-size: 15px; 111 60 } 112 61 113 /* 114 * 1.2.2 Features Section 115 */ 116 .buddypress .bp-features-section { 117 border-bottom: 1px solid #ccc; 118 clear: both; 119 margin-bottom: 3em; 120 margin-top: 2em; 121 overflow: hidden; 122 padding-bottom: 2em; 62 .bp-about-wrap img { 63 margin: 0; 64 max-width: 100%; 65 height: auto; 66 vertical-align: middle; 123 67 } 124 68 125 .buddypress .bp-features-section p { 126 font-size: 14px; 69 .bp-about-wrap p { 127 70 line-height: 1.5; 71 font-size: 14px; 128 72 } 129 73 130 .buddypress .bp-features-section img { 131 margin-bottom: 20px; 132 } 133 134 .buddypress .bp-features-section span.dashicons { 135 background-color: #fff; 136 border-radius: 50%; 137 clear: right; 138 color: #d84800; 139 font-size: 50px; 140 float: right; 141 height: 80px; 142 line-height: 80px; 143 margin: 0 0 15px 15px; 144 text-align: center; 145 width: 80px; 146 } 147 148 .buddypress .bp-features-section .headline-title { 149 font-size: 2em; 74 .bp-about-wrap h2 { 75 margin: 40px 0 0.6em; 76 font-size: 2.7em; 77 line-height: 1.3; 150 78 font-weight: 300; 151 line-height: 1.5;152 margin: 1em auto 2em;153 79 text-align: center; 154 80 } 155 81 156 .buddypress .bp-features-section .bp-feature-with-images { 157 border-bottom: 1px solid #ccc; 158 margin-bottom: 5em; 159 padding-bottom: 2em; 160 } 161 162 .buddypress .bp-features-section .bp-feature, 163 .buddypress .bp-features-section .bp-feature-imaged { 164 float: right; 165 margin-bottom: 3em; 166 margin-left: 4.799999999%; 167 width: 47.6%; 168 } 169 170 .buddypress .bp-features-section .bp-feature.opposite, 171 .buddypress .bp-features-section .bp-feature-imaged.anon { 172 margin-left: 0; 173 } 174 175 .buddypress .bp-features-section .bp-feature code { 176 font-size: 0.95em; 82 .bp-about-wrap h3 { 83 margin: 1.25em 0 0.6em; 84 font-size: 1.4em; 177 85 line-height: 1.5; 178 86 } 179 87 180 .buddypress .bp-feature:after { 181 clear: both; 182 content: ""; 183 margin-bottom: 2em; 88 .bp-about-wrap code { 89 font-size: 14px; 90 font-weight: 400; 184 91 } 185 92 186 .b uddypress .bp-feature-imaged .feature-title{187 color: #23282d;188 font- size: 1.25em;189 margin-bottom: 0.6em;190 margin-top: 0;93 .bp-about-wrap .about-description { 94 margin-top: 1.4em; 95 font-weight: 400; 96 line-height: 1.6; 97 font-size: 19px; 191 98 } 192 99 193 .buddypress .bp-feature-imaged p { 194 clear: right; 195 font-size: 1.1em; 100 .bp-about-wrap h3.wp-people-group { 101 margin: 2.6em 0 1.33em; 102 padding: 0; 103 font-size: 16px; 104 line-height: inherit; 196 105 } 197 106 198 .buddypress .bp-feature-imaged img { 199 clear: right; 107 .bp-about-wrap .wp-people-group { 108 padding: 0 5px; 109 margin: 0 -5px 0 -15px; 200 110 } 201 111 202 .buddypress .bp-feature .feature-title { 203 font-size: 1em; 204 line-height: 1.5; 112 .bp-about-wrap .compact { 205 113 margin-bottom: 0; 206 margin-right: 110px;207 margin-top: 0;208 text-align: right;209 114 } 210 115 211 .buddypress .bp-feature p { 212 margin-right: 110px; 116 .bp-about-wrap .wp-person { 117 display: inline-block; 118 vertical-align: top; 119 margin-left: 10px; 120 padding-bottom: 15px; 121 height: 70px; 122 width: 280px; 213 123 } 214 124 215 /* 216 * 1.2.3 Changelog Section 217 */ 218 .buddypress .bp-changelog-section { 219 clear: both; 220 margin-bottom: 3em; 221 margin-top: 4em; 125 .bp-about-wrap .compact .wp-person { 126 height: auto; 127 width: 180px; 222 128 padding-bottom: 0; 129 margin-bottom: 0; 223 130 } 224 131 225 .buddypress .bp-changelog-section:after { 226 clear: both; 227 content: ""; 228 display: table; 229 } 230 231 .buddypress .bp-changelog-section .changelog-title { 232 color: #23282d; 233 font-size: 1.25em; 234 line-height: 1.5; 235 margin: 0 auto 1.5em; 236 } 237 238 .buddypress .bp-two-column div { 239 float: right; 240 margin-left: 4.799999999%; 241 position: relative; 242 width: 47.6%; 243 } 244 245 .buddypress .bp-three-column .bp-column { 132 .bp-about-wrap .wp-person .gravatar { 246 133 float: right; 247 margin-left: 5%; 248 position: relative; 249 width: 29.95%; 134 margin: 0 0 10px 10px; 135 padding: 1px; 136 width: 60px; 137 height: 60px; 250 138 } 251 139 252 .b uddypress .bp-two-column .bp-column:nth-of-type(2n),253 .buddypress .bp-three-column .bp-column:nth-of-type(3n) { 254 margin-left: 0;140 .bp-about-wrap .compact .wp-person .gravatar { 141 width: 30px; 142 height: 30px; 255 143 } 256 144 257 .buddypress .bp-changelog { 258 margin-bottom: 3em; 259 } 260 261 .buddypress .bp-changelog:after { 262 clear: both; 263 content: ""; 264 display: table; 265 } 266 267 .buddypress .bp-changelog .title { 268 font-size: 14px; 269 margin-bottom: 0.75em; 270 margin-top: 0; 145 .bp-about-wrap .wp-person .web { 146 margin: 6px 0 2px; 147 font-size: 16px; 148 font-weight: 400; 149 line-height: 2; 150 text-decoration: none; 271 151 } 272 152 273 .b uddypress .bp-changelog p{274 margin-bottom: 0;153 .bp-about-wrap .wp-person .title { 154 display: block; 275 155 } 276 156 277 .bp- changelog-url{278 text-align: center;157 .bp-about-wrap p.wp-credits-list a { 158 white-space: nowrap; 279 159 } 280 160 281 .bp-assets { 282 clear: both; 283 margin-bottom: 3em; 284 } 285 286 @media screen and ( max-width: 782px ) { 161 @media only screen and (max-width: 500px) { 287 162 288 .bp-headline-feature, 289 .bp-features-section, 290 .bp-changelog-section, 291 .bp-assets { 292 margin-right: 20px; 163 .bp-about-wrap { 293 164 margin-left: 20px; 165 margin-right: 10px; 294 166 } 295 167 296 .buddypress .bp-headline-feature { 297 padding: 0; 298 } 299 300 .buddypress .bp-headline { 301 margin: 0; 302 width: 97%; 303 } 304 305 .buddypress .bp-features-section { 306 clear: both; 307 margin-bottom: 0; 308 margin-top: 2em; 309 padding-bottom: 2em; 310 } 311 312 .buddypress .bp-features-section .bp-feature-with-images { 313 margin-bottom: 2em; 314 } 315 316 .buddypress .bp-features-section .headline-title { 317 margin-bottom: 1em; 318 } 319 320 .buddypress .bp-changelog-section .changelog-title { 321 font-size: 1.25em; 322 line-height: 1.5; 323 margin-bottom: 0.5em; 324 margin-top: 0.5em; 325 } 326 327 .buddypress .bp-features-section .feature-title, 328 .buddypress .bp-changelog-section .title { 329 font-size: 1.25em; 330 line-height: 1.25; 331 margin-top: 0.6em; 332 text-align: right; 333 } 334 335 .buddypress .bp-features-section .bp-feature, 336 .buddypress .bp-features-section .bp-feature-imaged { 337 clear: both; 338 float: right; 339 margin-bottom: 1em; 340 margin-top: 1em; 168 .bp-about-wrap .bp-about-wrap h1 { 341 169 margin-left: 0; 342 padding-left: 1em;343 width: 100%;344 }345 346 .buddypress .bp-features-section .bp-feature-imaged p {347 font-size: 1em;348 }349 350 .buddypress .bp-features-section .bp-feature span {351 margin-top: 0.33em;352 }353 354 .buddypress .bp-feature.opposite .feature-title,355 .buddypress .bp-feature.opposite p {356 float: none;357 }358 359 .buddypress .bp-changelog-section {360 clear: both;361 margin-bottom: 2em;362 margin-top: 2em;363 }364 365 .buddypress .bp-changelog {366 margin-bottom: 0;367 }368 369 .buddypress .bp-changelog-section .changelog-title {370 margin-bottom: 0.5em;371 }372 373 .buddypress .bp-changelog .title {374 font-size: 1em;375 }376 377 .buddypress .bp-changelog p {378 margin-bottom: 1em;379 }380 381 .buddypress .bp-changelog-section .two-col > div,382 .buddypress .bp-changelog-section .three-col .col {383 margin-top: 0;384 padding-bottom: 0.5em;385 width: 100%;386 }387 388 .buddypress .bp-three-column .bp-column {389 width: 100%;390 }391 }392 393 @media screen and ( max-width: 360px ) {394 395 .buddypress .bp-headline {396 text-align: center;397 }398 399 .buddypress .bp-headline span.dashicons {400 clear: none;401 font-size: 80px;402 float: none;403 height: 80px;404 line-height: 80px;405 margin: 0 auto;406 width: 80px;407 }408 409 .buddypress .bp-headline-feature .headline-title,410 .buddypress .bp-features-section .headline-title {411 font-size: 1.5em;412 line-height: 1.5;413 text-align: right;414 }415 416 .buddypress .bp-headline-feature .headline-title {417 margin: 1em 0 0;418 }419 420 .buddypress .bp-headline-feature p {421 margin: 1.15em 0 0.6em auto;422 text-align: right;423 width: auto;424 }425 426 .buddypress .bp-features-section .bp-feature {427 text-align: center;428 }429 430 .buddypress .bp-features-section span.dashicons {431 float: none;432 }433 434 .buddypress .bp-features-section .feature-title,435 .buddypress .bp-features-section p {436 margin-right: 0;437 text-align: right;438 170 } 439 171 } 440 172 -
src/bp-core/admin/css/common.css
diff --git a/src/bp-core/admin/css/common.css b/src/bp-core/admin/css/common.css index ce7e31242..b1c8d945a 100644
a b TABLE OF CONTENTS: 10 10 -------------------------------------------------------------------------------- 11 11 1.0 Welcome Screen 12 12 1.1 Version Badge 13 1.2 About Panel 14 1.2.1 Headline Feature 15 1.2.2 Features Section 16 1.2.3 Changelog Section 13 1.2 --- 14 1.3 Credits Panel 17 15 2.0 Dashicons 18 16 2.1 Top level menus 19 17 2.2 Settings - Components … … TABLE OF CONTENTS: 43 41 content: "\f448"; 44 42 } 45 43 46 .about-wrap .bp-badge { 47 position: absolute; 48 top: 0; 49 right: 0; 50 } 51 52 .index_page_bp-credits code, 44 .settings_page_bp-credits code, 53 45 .index_page_bp-about code { 54 46 background-color: #e0e0e0; 55 47 color: #636363; 56 48 font-size: 1em; 57 49 } 58 50 59 @media only screen and (max-width: 500px) {60 61 .about-wrap .bp-badge {62 position: relative;63 margin: 10px auto;64 top: auto;65 right: auto;66 }67 }68 69 51 /* 70 * 1.2 About Panel 52 * 1.3 Credits Panel 53 * 54 * Taken from WP 4.9.5. 71 55 */ 72 73 /* 74 * 1.2.1 Headline Feature 75 */ 76 .buddypress .bp-headline-feature { 77 margin-bottom: 2em; 78 margin-top: 3em; 79 padding: 2em 3em; 80 } 81 82 .buddypress .bp-headline { 83 margin: 0 auto; 84 width: 45em; 85 } 86 87 .buddypress .bp-headline span.dashicons { 88 background-color: #f1f1f1; 89 color: #d84800; 90 clear: left; 91 font-size: 100px; 92 float: left; 93 height: 100px; 94 line-height: 100px; 95 margin: 0 15px 15px 0; 96 text-align: center; 97 width: 100px; 98 } 99 100 .buddypress .bp-headline-feature .headline-title { 101 font-size: 2.2em; 102 font-weight: 300; 103 line-height: 2; 104 margin: 0 0 1em; 105 text-align: center; 106 } 107 108 .buddypress .bp-headline-feature p { 109 font-size: 1.15em; 110 margin: 1.15em auto 0.6em 0; 56 .bp-about-wrap { 57 position: relative; 58 max-width: 1050px; 59 font-size: 15px; 111 60 } 112 61 113 /* 114 * 1.2.2 Features Section 115 */ 116 .buddypress .bp-features-section { 117 border-bottom: 1px solid #ccc; 118 clear: both; 119 margin-bottom: 3em; 120 margin-top: 2em; 121 overflow: hidden; 122 padding-bottom: 2em; 62 .bp-about-wrap img { 63 margin: 0; 64 max-width: 100%; 65 height: auto; 66 vertical-align: middle; 123 67 } 124 68 125 .buddypress .bp-features-section p { 126 font-size: 14px; 69 .bp-about-wrap p { 127 70 line-height: 1.5; 71 font-size: 14px; 128 72 } 129 73 130 .buddypress .bp-features-section img { 131 margin-bottom: 20px; 132 } 133 134 .buddypress .bp-features-section span.dashicons { 135 background-color: #fff; 136 border-radius: 50%; 137 clear: left; 138 color: #d84800; 139 font-size: 50px; 140 float: left; 141 height: 80px; 142 line-height: 80px; 143 margin: 0 15px 15px 0; 144 text-align: center; 145 width: 80px; 146 } 147 148 .buddypress .bp-features-section .headline-title { 149 font-size: 2em; 74 .bp-about-wrap h2 { 75 margin: 40px 0 0.6em; 76 font-size: 2.7em; 77 line-height: 1.3; 150 78 font-weight: 300; 151 line-height: 1.5;152 margin: 1em auto 2em;153 79 text-align: center; 154 80 } 155 81 156 .buddypress .bp-features-section .bp-feature-with-images { 157 border-bottom: 1px solid #ccc; 158 margin-bottom: 5em; 159 padding-bottom: 2em; 160 } 161 162 .buddypress .bp-features-section .bp-feature, 163 .buddypress .bp-features-section .bp-feature-imaged { 164 float: left; 165 margin-bottom: 3em; 166 margin-right: 4.799999999%; 167 width: 47.6%; 168 } 169 170 .buddypress .bp-features-section .bp-feature.opposite, 171 .buddypress .bp-features-section .bp-feature-imaged.anon { 172 margin-right: 0; 173 } 174 175 .buddypress .bp-features-section .bp-feature code { 176 font-size: 0.95em; 82 .bp-about-wrap h3 { 83 margin: 1.25em 0 0.6em; 84 font-size: 1.4em; 177 85 line-height: 1.5; 178 86 } 179 87 180 .buddypress .bp-feature:after { 181 clear: both; 182 content: ""; 183 margin-bottom: 2em; 88 .bp-about-wrap code { 89 font-size: 14px; 90 font-weight: 400; 184 91 } 185 92 186 .b uddypress .bp-feature-imaged .feature-title{187 color: #23282d;188 font- size: 1.25em;189 margin-bottom: 0.6em;190 margin-top: 0;93 .bp-about-wrap .about-description { 94 margin-top: 1.4em; 95 font-weight: 400; 96 line-height: 1.6; 97 font-size: 19px; 191 98 } 192 99 193 .buddypress .bp-feature-imaged p { 194 clear: left; 195 font-size: 1.1em; 100 .bp-about-wrap h3.wp-people-group { 101 margin: 2.6em 0 1.33em; 102 padding: 0; 103 font-size: 16px; 104 line-height: inherit; 196 105 } 197 106 198 .buddypress .bp-feature-imaged img { 199 clear: left; 107 .bp-about-wrap .wp-people-group { 108 padding: 0 5px; 109 margin: 0 -15px 0 -5px; 200 110 } 201 111 202 .buddypress .bp-feature .feature-title { 203 font-size: 1em; 204 line-height: 1.5; 112 .bp-about-wrap .compact { 205 113 margin-bottom: 0; 206 margin-left: 110px;207 margin-top: 0;208 text-align: left;209 114 } 210 115 211 .buddypress .bp-feature p { 212 margin-left: 110px; 116 .bp-about-wrap .wp-person { 117 display: inline-block; 118 vertical-align: top; 119 margin-right: 10px; 120 padding-bottom: 15px; 121 height: 70px; 122 width: 280px; 213 123 } 214 124 215 /* 216 * 1.2.3 Changelog Section 217 */ 218 .buddypress .bp-changelog-section { 219 clear: both; 220 margin-bottom: 3em; 221 margin-top: 4em; 125 .bp-about-wrap .compact .wp-person { 126 height: auto; 127 width: 180px; 222 128 padding-bottom: 0; 129 margin-bottom: 0; 223 130 } 224 131 225 .buddypress .bp-changelog-section:after { 226 clear: both; 227 content: ""; 228 display: table; 229 } 230 231 .buddypress .bp-changelog-section .changelog-title { 232 color: #23282d; 233 font-size: 1.25em; 234 line-height: 1.5; 235 margin: 0 auto 1.5em; 236 } 237 238 .buddypress .bp-two-column div { 239 float: left; 240 margin-right: 4.799999999%; 241 position: relative; 242 width: 47.6%; 243 } 244 245 .buddypress .bp-three-column .bp-column { 132 .bp-about-wrap .wp-person .gravatar { 246 133 float: left; 247 margin-right: 5%; 248 position: relative; 249 width: 29.95%; 134 margin: 0 10px 10px 0; 135 padding: 1px; 136 width: 60px; 137 height: 60px; 250 138 } 251 139 252 .b uddypress .bp-two-column .bp-column:nth-of-type(2n),253 .buddypress .bp-three-column .bp-column:nth-of-type(3n) { 254 margin-right: 0;140 .bp-about-wrap .compact .wp-person .gravatar { 141 width: 30px; 142 height: 30px; 255 143 } 256 144 257 .buddypress .bp-changelog { 258 margin-bottom: 3em; 259 } 260 261 .buddypress .bp-changelog:after { 262 clear: both; 263 content: ""; 264 display: table; 265 } 266 267 .buddypress .bp-changelog .title { 268 font-size: 14px; 269 margin-bottom: 0.75em; 270 margin-top: 0; 145 .bp-about-wrap .wp-person .web { 146 margin: 6px 0 2px; 147 font-size: 16px; 148 font-weight: 400; 149 line-height: 2; 150 text-decoration: none; 271 151 } 272 152 273 .b uddypress .bp-changelog p{274 margin-bottom: 0;153 .bp-about-wrap .wp-person .title { 154 display: block; 275 155 } 276 156 277 .bp- changelog-url{278 text-align: center;157 .bp-about-wrap p.wp-credits-list a { 158 white-space: nowrap; 279 159 } 280 160 281 .bp-assets { 282 clear: both; 283 margin-bottom: 3em; 284 } 285 286 @media screen and ( max-width: 782px ) { 161 @media only screen and (max-width: 500px) { 287 162 288 .bp-headline-feature, 289 .bp-features-section, 290 .bp-changelog-section, 291 .bp-assets { 292 margin-left: 20px; 163 .bp-about-wrap { 293 164 margin-right: 20px; 165 margin-left: 10px; 294 166 } 295 167 296 .buddypress .bp-headline-feature { 297 padding: 0; 298 } 299 300 .buddypress .bp-headline { 301 margin: 0; 302 width: 97%; 303 } 304 305 .buddypress .bp-features-section { 306 clear: both; 307 margin-bottom: 0; 308 margin-top: 2em; 309 padding-bottom: 2em; 310 } 311 312 .buddypress .bp-features-section .bp-feature-with-images { 313 margin-bottom: 2em; 314 } 315 316 .buddypress .bp-features-section .headline-title { 317 margin-bottom: 1em; 318 } 319 320 .buddypress .bp-changelog-section .changelog-title { 321 font-size: 1.25em; 322 line-height: 1.5; 323 margin-bottom: 0.5em; 324 margin-top: 0.5em; 325 } 326 327 .buddypress .bp-features-section .feature-title, 328 .buddypress .bp-changelog-section .title { 329 font-size: 1.25em; 330 line-height: 1.25; 331 margin-top: 0.6em; 332 text-align: left; 333 } 334 335 .buddypress .bp-features-section .bp-feature, 336 .buddypress .bp-features-section .bp-feature-imaged { 337 clear: both; 338 float: left; 339 margin-bottom: 1em; 340 margin-top: 1em; 168 .bp-about-wrap .bp-about-wrap h1 { 341 169 margin-right: 0; 342 padding-right: 1em;343 width: 100%;344 }345 346 .buddypress .bp-features-section .bp-feature-imaged p {347 font-size: 1em;348 }349 350 .buddypress .bp-features-section .bp-feature span {351 margin-top: 0.33em;352 }353 354 .buddypress .bp-feature.opposite .feature-title,355 .buddypress .bp-feature.opposite p {356 float: none;357 }358 359 .buddypress .bp-changelog-section {360 clear: both;361 margin-bottom: 2em;362 margin-top: 2em;363 }364 365 .buddypress .bp-changelog {366 margin-bottom: 0;367 }368 369 .buddypress .bp-changelog-section .changelog-title {370 margin-bottom: 0.5em;371 }372 373 .buddypress .bp-changelog .title {374 font-size: 1em;375 }376 377 .buddypress .bp-changelog p {378 margin-bottom: 1em;379 }380 381 .buddypress .bp-changelog-section .two-col > div,382 .buddypress .bp-changelog-section .three-col .col {383 margin-top: 0;384 padding-bottom: 0.5em;385 width: 100%;386 }387 388 .buddypress .bp-three-column .bp-column {389 width: 100%;390 }391 }392 393 @media screen and ( max-width: 360px ) {394 395 .buddypress .bp-headline {396 text-align: center;397 }398 399 .buddypress .bp-headline span.dashicons {400 clear: none;401 font-size: 80px;402 float: none;403 height: 80px;404 line-height: 80px;405 margin: 0 auto;406 width: 80px;407 }408 409 .buddypress .bp-headline-feature .headline-title,410 .buddypress .bp-features-section .headline-title {411 font-size: 1.5em;412 line-height: 1.5;413 text-align: left;414 }415 416 .buddypress .bp-headline-feature .headline-title {417 margin: 1em 0 0;418 }419 420 .buddypress .bp-headline-feature p {421 margin: 1.15em auto 0.6em 0;422 text-align: left;423 width: auto;424 }425 426 .buddypress .bp-features-section .bp-feature {427 text-align: center;428 }429 430 .buddypress .bp-features-section span.dashicons {431 float: none;432 }433 434 .buddypress .bp-features-section .feature-title,435 .buddypress .bp-features-section p {436 margin-left: 0;437 text-align: left;438 170 } 439 171 } 440 172 -
new file src/bp-core/admin/css/hello-rtl.css
diff --git a/src/bp-core/admin/css/hello-rtl.css b/src/bp-core/admin/css/hello-rtl.css new file mode 100644 index 000000000..5c51a1b10
- + 1 /*------------------------------------------------------------------------------ 2 Loaded in wp-admin for query string `hello=buddypress`. 3 4 @since 3.0.0 5 6 -------------------------------------------------------------------------------- 7 TABLE OF CONTENTS: 8 -------------------------------------------------------------------------------- 9 1.0 - Typography and colour 10 2.0 - Dashicons 11 3.0 - Elements 12 3.1 - Backdrop and container 13 3.2 - Modal footer 14 3.3 - Modal header 15 3.4 - Modal content 16 4.0 - Content styles 17 4.1 - Backdrop and container 18 4.2 - Footer content 19 4.3 - Header content 20 4.4 - Content content 21 5.0 - Media 22 6.0 - Media Queries 23 6.1 - Desktop Medium 24 6.2 - Desktop Large 25 ------------------------------------------------------------------------------*/ 26 /*------------------------------------------------------------------------------ 27 * 1.0 - Typography and colour 28 *----------------------------------------------------------------------------*/ 29 :root { 30 --bp-hello-color-primary: #d34600; 31 --bp-hello-color-secondary: #e5e5e5; 32 --bp-hello-container-size: 15%; 33 } 34 35 #bp-hello-container a { 36 color: var(--bp-hello-color-primary); 37 } 38 39 #bp-hello-container a:hover { 40 transition: all 0.1s ease-in-out; 41 color: black; 42 } 43 44 #bp-hello-container .bp-hello-header h1 { 45 line-height: 1.7; 46 font-size: 21px; 47 font-weight: 400; 48 } 49 50 .bp-hello-content p { 51 font-size: 16px; 52 } 53 54 /*------------------------------------------------------------------------------ 55 * 2.0 - Dashicons 56 *----------------------------------------------------------------------------*/ 57 .bp-hello-close a:hover:before { 58 transition: all 0.1s ease-in-out; 59 color: var(--bp-hello-color-primary); 60 } 61 62 .bp-hello-close a.close-modal:before { 63 content: "\f158"; 64 color: #23282d; 65 /* wp toolbar */ 66 font: 400 35px/1 dashicons; 67 speak: none; 68 -webkit-font-smoothing: antialiased; 69 -moz-osx-font-smoothing: grayscale; 70 background-image: none !important; 71 } 72 73 .bp-hello-social li a:before { 74 color: #23282d; 75 /* wp toolbar */ 76 font: 400 30px/0.6 dashicons; 77 speak: none; 78 -webkit-font-smoothing: antialiased; 79 -moz-osx-font-smoothing: grayscale; 80 background-image: none !important; 81 } 82 83 .bp-hello-social li a:hover:before { 84 transition: all 0.1s ease-in-out; 85 color: var(--bp-hello-color-primary); 86 } 87 88 .bp-hello-social li a.support:before { 89 content: "\f448"; 90 } 91 92 .bp-hello-social li a.twitter:before { 93 content: "\f301"; 94 } 95 96 /*------------------------------------------------------------------------------ 97 * 3.0 - Elements 98 *----------------------------------------------------------------------------*/ 99 /* 100 * 3.1 - Backdrop and container 101 */ 102 #bp-hello-backdrop { 103 position: fixed; 104 top: 0; 105 right: 0; 106 left: 0; 107 bottom: 0; 108 z-index: 9998; 109 display: none; 110 } 111 112 #bp-hello-container { 113 position: fixed; 114 top: 0; 115 bottom: 80px; 116 z-index: 99999; 117 } 118 119 .bp-disable-scroll { 120 overflow: hidden; 121 } 122 123 /* 124 * 3.2 - Modal footer 125 */ 126 .bp-hello-footer { 127 display: flex; 128 flex-wrap: wrap; 129 height: 58px; 130 max-height: 58px; 131 } 132 133 .bp-hello-social-cta, 134 .bp-hello-social-links { 135 flex-basis: 50%; 136 } 137 138 .bp-hello-social-links ul { 139 display: inline-block; 140 } 141 142 .bp-hello-social li { 143 position: relative; 144 bottom: -5px; 145 display: inline-block; 146 list-style-type: none; 147 margin-bottom: 0; 148 } 149 150 .bp-hello-social li:last-child a { 151 margin-right: 4px; 152 } 153 154 /* 155 * 3.3 - Modal header 156 */ 157 .bp-hello-header { 158 height: 58px; 159 max-height: 58px; 160 } 161 162 /* 163 * 3.4 - Modal content 164 */ 165 .bp-hello-content { 166 padding: 0 25px; 167 height: calc(100% - 58px); 168 overflow-y: auto; 169 -webkit-overflow-scrolling: touch; 170 } 171 172 /*------------------------------------------------------------------------------ 173 * 4.0 - Content styles 174 *----------------------------------------------------------------------------*/ 175 /* 176 * 4.1 - Backdrop and container 177 */ 178 #bp-hello-backdrop { 179 background-color: rgba(0, 0, 0, 0.8); 180 transition: opacity 0.15s ease-out; 181 } 182 183 #bp-hello-container { 184 background-color: white; 185 } 186 187 /* 188 * 4.2 - Footer content 189 */ 190 .bp-hello-footer { 191 border-radius: 0 0 3px 3px; 192 background-color: white; 193 border-top: 1px solid var(--bp-hello-color-secondary); 194 padding: 6px 25px; 195 } 196 197 .bp-hello-footer p { 198 font-size: 15px; 199 } 200 201 .bp-hello-social-cta { 202 text-align: right; 203 } 204 205 .bp-hello-social-links { 206 text-align: left; 207 } 208 209 .bp-hello-social li a { 210 text-decoration: none; 211 } 212 213 /* 214 * 4.3 - Header content 215 */ 216 .bp-hello-header { 217 padding: 6px 25px; 218 } 219 220 .bp-hello-header h1 { 221 width: calc(100% - 51px); 222 } 223 224 #bp-hello-container .bp-hello-header { 225 border-bottom: 1px solid var(--bp-hello-color-secondary); 226 } 227 228 .bp-hello-title { 229 text-align: right; 230 } 231 232 .bp-hello-close { 233 position: absolute; 234 top: 20px; 235 left: 25px; 236 text-align: left; 237 } 238 239 .bp-hello-close a { 240 text-decoration: none; 241 } 242 243 /* 244 * 4.4 - Content content 245 */ 246 .bp-hello-content { 247 background-color: white; 248 } 249 250 /*------------------------------------------------------------------------------ 251 * 5.0 - Media 252 *----------------------------------------------------------------------------*/ 253 .bp-hello-content img { 254 border-radius: 2px; 255 max-width: 100%; 256 } 257 258 /*------------------------------------------------------------------------------ 259 * 6.0 - Media Queries 260 *----------------------------------------------------------------------------*/ 261 /* 262 * 6.1 - Desktop Medium 263 */ 264 @media only screen and (min-width: 1024px) { 265 #bp-hello-backdrop { 266 display: block; 267 } 268 #bp-hello-container { 269 position: fixed; 270 top: 60px; 271 right: var(--bp-hello-container-size); 272 left: var(--bp-hello-container-size); 273 bottom: 30px; 274 border-radius: 3px; 275 } 276 #bp-hello-container .bp-hello-header h1 { 277 line-height: inherit; 278 } 279 .bp-hello-header { 280 height: auto; 281 max-height: inherit; 282 padding: 6px 30px; 283 } 284 .bp-hello-close { 285 left: 30px; 286 } 287 .bp-hello-close a.close-modal:before { 288 line-height: 0.7; 289 } 290 .bp-hello-footer { 291 position: fixed; 292 right: var(--bp-hello-container-size); 293 left: var(--bp-hello-container-size); 294 bottom: 30px; 295 z-index: 10000; 296 height: auto; 297 max-height: inherit; 298 padding: 6px 30px; 299 } 300 .bp-hello-content { 301 height: calc(100% - 90px); 302 padding: 0 30px; 303 } 304 .bp-hello-content p { 305 font-size: 14px; 306 } 307 } 308 309 /** 310 * 6.2 - Desktop Large 311 */ 312 @media screen and (min-width: 1280px) { 313 #bp-hello-container, 314 .bp-hello-footer { 315 right: calc((100% - 896px) / 2); 316 left: calc((100% - 896px) / 2); 317 } 318 } -
new file src/bp-core/admin/css/hello.css
diff --git a/src/bp-core/admin/css/hello.css b/src/bp-core/admin/css/hello.css new file mode 100644 index 000000000..56b4681f6
- + 1 /*------------------------------------------------------------------------------ 2 Loaded in wp-admin for query string `hello=buddypress`. 3 4 @since 3.0.0 5 6 -------------------------------------------------------------------------------- 7 TABLE OF CONTENTS: 8 -------------------------------------------------------------------------------- 9 1.0 - Typography and colour 10 2.0 - Dashicons 11 3.0 - Elements 12 3.1 - Backdrop and container 13 3.2 - Modal footer 14 3.3 - Modal header 15 3.4 - Modal content 16 4.0 - Content styles 17 4.1 - Backdrop and container 18 4.2 - Footer content 19 4.3 - Header content 20 4.4 - Content content 21 5.0 - Media 22 6.0 - Media Queries 23 6.1 - Desktop Medium 24 6.2 - Desktop Large 25 ------------------------------------------------------------------------------*/ 26 /*------------------------------------------------------------------------------ 27 * 1.0 - Typography and colour 28 *----------------------------------------------------------------------------*/ 29 :root { 30 --bp-hello-color-primary: #d34600; 31 --bp-hello-color-secondary: #e5e5e5; 32 --bp-hello-container-size: 15%; 33 } 34 35 #bp-hello-container a { 36 color: var(--bp-hello-color-primary); 37 } 38 39 #bp-hello-container a:hover { 40 transition: all 0.1s ease-in-out; 41 color: black; 42 } 43 44 #bp-hello-container .bp-hello-header h1 { 45 line-height: 1.7; 46 font-size: 21px; 47 font-weight: 400; 48 } 49 50 .bp-hello-content p { 51 font-size: 16px; 52 } 53 54 /*------------------------------------------------------------------------------ 55 * 2.0 - Dashicons 56 *----------------------------------------------------------------------------*/ 57 .bp-hello-close a:hover:before { 58 transition: all 0.1s ease-in-out; 59 color: var(--bp-hello-color-primary); 60 } 61 62 .bp-hello-close a.close-modal:before { 63 content: "\f158"; 64 color: #23282d; 65 /* wp toolbar */ 66 font: 400 35px/1 dashicons; 67 speak: none; 68 -webkit-font-smoothing: antialiased; 69 -moz-osx-font-smoothing: grayscale; 70 background-image: none !important; 71 } 72 73 .bp-hello-social li a:before { 74 color: #23282d; 75 /* wp toolbar */ 76 font: 400 30px/0.6 dashicons; 77 speak: none; 78 -webkit-font-smoothing: antialiased; 79 -moz-osx-font-smoothing: grayscale; 80 background-image: none !important; 81 } 82 83 .bp-hello-social li a:hover:before { 84 transition: all 0.1s ease-in-out; 85 color: var(--bp-hello-color-primary); 86 } 87 88 .bp-hello-social li a.support:before { 89 content: "\f448"; 90 } 91 92 .bp-hello-social li a.twitter:before { 93 content: "\f301"; 94 } 95 96 /*------------------------------------------------------------------------------ 97 * 3.0 - Elements 98 *----------------------------------------------------------------------------*/ 99 /* 100 * 3.1 - Backdrop and container 101 */ 102 #bp-hello-backdrop { 103 position: fixed; 104 top: 0; 105 left: 0; 106 right: 0; 107 bottom: 0; 108 z-index: 9998; 109 display: none; 110 } 111 112 #bp-hello-container { 113 position: fixed; 114 top: 0; 115 bottom: 80px; 116 z-index: 99999; 117 } 118 119 .bp-disable-scroll { 120 overflow: hidden; 121 } 122 123 /* 124 * 3.2 - Modal footer 125 */ 126 .bp-hello-footer { 127 display: flex; 128 flex-wrap: wrap; 129 height: 58px; 130 max-height: 58px; 131 } 132 133 .bp-hello-social-cta, 134 .bp-hello-social-links { 135 flex-basis: 50%; 136 } 137 138 .bp-hello-social-links ul { 139 display: inline-block; 140 } 141 142 .bp-hello-social li { 143 position: relative; 144 bottom: -5px; 145 display: inline-block; 146 list-style-type: none; 147 margin-bottom: 0; 148 } 149 150 .bp-hello-social li:last-child a { 151 margin-left: 4px; 152 } 153 154 /* 155 * 3.3 - Modal header 156 */ 157 .bp-hello-header { 158 height: 58px; 159 max-height: 58px; 160 } 161 162 /* 163 * 3.4 - Modal content 164 */ 165 .bp-hello-content { 166 padding: 0 25px; 167 height: calc(100% - 58px); 168 overflow-y: auto; 169 -webkit-overflow-scrolling: touch; 170 } 171 172 /*------------------------------------------------------------------------------ 173 * 4.0 - Content styles 174 *----------------------------------------------------------------------------*/ 175 /* 176 * 4.1 - Backdrop and container 177 */ 178 #bp-hello-backdrop { 179 background-color: rgba(0, 0, 0, 0.8); 180 transition: opacity 0.15s ease-out; 181 } 182 183 #bp-hello-container { 184 background-color: white; 185 } 186 187 /* 188 * 4.2 - Footer content 189 */ 190 .bp-hello-footer { 191 border-radius: 0 0 3px 3px; 192 background-color: white; 193 border-top: 1px solid var(--bp-hello-color-secondary); 194 padding: 6px 25px; 195 } 196 197 .bp-hello-footer p { 198 font-size: 15px; 199 } 200 201 .bp-hello-social-cta { 202 text-align: left; 203 } 204 205 .bp-hello-social-links { 206 text-align: right; 207 } 208 209 .bp-hello-social li a { 210 text-decoration: none; 211 } 212 213 /* 214 * 4.3 - Header content 215 */ 216 .bp-hello-header { 217 padding: 6px 25px; 218 } 219 220 .bp-hello-header h1 { 221 width: calc(100% - 51px); 222 } 223 224 #bp-hello-container .bp-hello-header { 225 border-bottom: 1px solid var(--bp-hello-color-secondary); 226 } 227 228 .bp-hello-title { 229 text-align: left; 230 } 231 232 .bp-hello-close { 233 position: absolute; 234 top: 20px; 235 right: 25px; 236 text-align: right; 237 } 238 239 .bp-hello-close a { 240 text-decoration: none; 241 } 242 243 /* 244 * 4.4 - Content content 245 */ 246 .bp-hello-content { 247 background-color: white; 248 } 249 250 /*------------------------------------------------------------------------------ 251 * 5.0 - Media 252 *----------------------------------------------------------------------------*/ 253 .bp-hello-content img { 254 border-radius: 2px; 255 max-width: 100%; 256 } 257 258 /*------------------------------------------------------------------------------ 259 * 6.0 - Media Queries 260 *----------------------------------------------------------------------------*/ 261 /* 262 * 6.1 - Desktop Medium 263 */ 264 @media only screen and (min-width: 1024px) { 265 #bp-hello-backdrop { 266 display: block; 267 } 268 #bp-hello-container { 269 position: fixed; 270 top: 60px; 271 left: var(--bp-hello-container-size); 272 right: var(--bp-hello-container-size); 273 bottom: 30px; 274 border-radius: 3px; 275 } 276 #bp-hello-container .bp-hello-header h1 { 277 line-height: inherit; 278 } 279 .bp-hello-header { 280 height: auto; 281 max-height: inherit; 282 padding: 6px 30px; 283 } 284 .bp-hello-close { 285 right: 30px; 286 } 287 .bp-hello-close a.close-modal:before { 288 line-height: 0.7; 289 } 290 .bp-hello-footer { 291 position: fixed; 292 left: var(--bp-hello-container-size); 293 right: var(--bp-hello-container-size); 294 bottom: 30px; 295 z-index: 10000; 296 height: auto; 297 max-height: inherit; 298 padding: 6px 30px; 299 } 300 .bp-hello-content { 301 height: calc(100% - 90px); 302 padding: 0 30px; 303 } 304 .bp-hello-content p { 305 font-size: 14px; 306 } 307 } 308 309 /** 310 * 6.2 - Desktop Large 311 */ 312 @media screen and (min-width: 1280px) { 313 #bp-hello-container, 314 .bp-hello-footer { 315 left: calc((100% - 896px) / 2); 316 right: calc((100% - 896px) / 2); 317 } 318 } -
new file src/bp-core/admin/js/hello.js
diff --git a/src/bp-core/admin/js/hello.js b/src/bp-core/admin/js/hello.js new file mode 100644 index 000000000..26c5a0e0e
- + 1 /** 2 * Loads for BuddyPress Hello in wp-admin for query string `hello=buddypress`. 3 * 4 * @since 3.0.0 5 */ 6 (function() { 7 /** 8 * Open the BuddyPress Hello modal. 9 */ 10 var bp_hello_open_modal = function() { 11 document.body.classList.add( 'bp-disable-scroll' ); 12 13 // Show. 14 document.getElementById( 'bp-hello-backdrop' ).style.display = ''; 15 document.getElementById( 'bp-hello-container' ).style.display = ''; 16 }; 17 18 /** 19 * Close the BuddyPress Hello modal. 20 */ 21 var bp_hello_close_modal = function() { 22 var backdrop = document.getElementById( 'bp-hello-backdrop' ), 23 modal = document.getElementById( 'bp-hello-container' ); 24 25 document.body.classList.remove( 'bp-disable-scroll' ); 26 27 // Hide. 28 modal.parentNode.removeChild( modal ); 29 backdrop.parentNode.removeChild( backdrop ); 30 }; 31 32 // Close modal if "X" or background is touched. 33 document.addEventListener( 'click', function( event ) { 34 var backdrop = document.getElementById( 'bp-hello-backdrop' ); 35 36 if ( ! backdrop || ! document.getElementById( 'bp-hello-container' ) ) { 37 return; 38 } 39 40 var backdrop_click = backdrop.contains( event.target ), 41 modal_close_click = event.target.classList.contains( 'close-modal' ); 42 43 if ( ! modal_close_click && ! backdrop_click ) { 44 return; 45 } 46 47 bp_hello_close_modal(); 48 }, false ); 49 50 // Close modal if escape key is presssed. 51 document.addEventListener( 'keyup', function( event ) { 52 if ( event.keyCode === 27 ) { 53 if ( ! document.getElementById( 'bp-hello-backdrop' ) || ! document.getElementById( 'bp-hello-container' ) ) { 54 return; 55 } 56 57 bp_hello_close_modal(); 58 } 59 }, false ); 60 61 // Init modal after the screen's loaded. 62 if ( document.attachEvent ? document.readyState === 'complete' : document.readyState !== 'loading' ) { 63 bp_hello_open_modal(); 64 } else { 65 document.addEventListener( 'DOMContentLoaded', bp_hello_open_modal ); 66 } 67 }()); -
new file src/bp-core/admin/sass/hello.scss
diff --git a/src/bp-core/admin/sass/hello.scss b/src/bp-core/admin/sass/hello.scss new file mode 100644 index 000000000..5ab1003f7
- + 1 /*------------------------------------------------------------------------------ 2 Loaded in wp-admin for query string `hello=buddypress`. 3 4 @since 3.0.0 5 6 -------------------------------------------------------------------------------- 7 TABLE OF CONTENTS: 8 -------------------------------------------------------------------------------- 9 1.0 - Typography and colour 10 2.0 - Dashicons 11 3.0 - Elements 12 3.1 - Backdrop and container 13 3.2 - Modal footer 14 3.3 - Modal header 15 3.4 - Modal content 16 4.0 - Content styles 17 4.1 - Backdrop and container 18 4.2 - Footer content 19 4.3 - Header content 20 4.4 - Content content 21 5.0 - Media 22 6.0 - Media Queries 23 6.1 - Desktop Medium 24 6.2 - Desktop Large 25 ------------------------------------------------------------------------------*/ 26 27 /*------------------------------------------------------------------------------ 28 * 1.0 - Typography and colour 29 *----------------------------------------------------------------------------*/ 30 :root { 31 --bp-hello-color-primary: #d34600; 32 --bp-hello-color-secondary: #e5e5e5; 33 --bp-hello-container-size: 15%; 34 } 35 36 #bp-hello-container { 37 38 a { 39 color: var(--bp-hello-color-primary); 40 41 &:hover { 42 transition: all 0.1s ease-in-out; 43 color: rgb(0, 0, 0); 44 } 45 } 46 47 .bp-hello-header { 48 49 h1 { 50 line-height: 1.7; 51 font-size: 21px; 52 font-weight: 400; 53 } 54 } 55 } 56 57 .bp-hello-content { 58 59 p { 60 font-size: 16px; 61 } 62 } 63 64 /*------------------------------------------------------------------------------ 65 * 2.0 - Dashicons 66 *----------------------------------------------------------------------------*/ 67 .bp-hello-close { 68 69 a { 70 71 &:hover:before { 72 transition: all 0.1s ease-in-out; 73 color: var(--bp-hello-color-primary); 74 } 75 76 &.close-modal:before { 77 content: "\f158"; 78 color: #23282d; /* wp toolbar */ 79 font: 400 35px/1 dashicons; 80 speak: none; 81 -webkit-font-smoothing: antialiased; 82 -moz-osx-font-smoothing: grayscale; 83 background-image: none !important; 84 } 85 } 86 } 87 88 .bp-hello-social { 89 90 li a { 91 92 &:before { 93 color: #23282d; /* wp toolbar */ 94 font: 400 30px/0.6 dashicons; 95 speak: none; 96 -webkit-font-smoothing: antialiased; 97 -moz-osx-font-smoothing: grayscale; 98 background-image: none !important; 99 } 100 101 &:hover:before { 102 transition: all 0.1s ease-in-out; 103 color: var(--bp-hello-color-primary); 104 } 105 106 &.support:before { 107 content: "\f448"; 108 } 109 110 &.twitter:before { 111 content: "\f301"; 112 } 113 } 114 } 115 116 /*------------------------------------------------------------------------------ 117 * 3.0 - Elements 118 *----------------------------------------------------------------------------*/ 119 120 /* 121 * 3.1 - Backdrop and container 122 */ 123 #bp-hello-backdrop { 124 position: fixed; 125 top: 0; 126 left: 0; 127 right: 0; 128 bottom: 0; 129 z-index: 9998; // >= 9990 for main menu 130 131 display: none; 132 } 133 134 #bp-hello-container { 135 position: fixed; 136 top: 0; 137 bottom: 80px; 138 z-index: 99999; // >= 99998 for toolbar 139 } 140 141 .bp-disable-scroll { 142 overflow: hidden; 143 } 144 145 /* 146 * 3.2 - Modal footer 147 */ 148 .bp-hello-footer { 149 display: flex; 150 flex-wrap: wrap; 151 152 height: 58px; 153 max-height: 58px; 154 } 155 156 .bp-hello-social-cta, 157 .bp-hello-social-links { 158 flex-basis: 50%; 159 } 160 161 .bp-hello-social-links { 162 163 ul { 164 display: inline-block; 165 } 166 } 167 168 .bp-hello-social { 169 170 li { 171 position: relative; 172 bottom: -5px; 173 display: inline-block; 174 list-style-type: none; 175 margin-bottom: 0; 176 177 &:last-child a { 178 margin-left: 4px; 179 } 180 } 181 } 182 183 /* 184 * 3.3 - Modal header 185 */ 186 .bp-hello-header { 187 height: 58px; 188 max-height: 58px; 189 } 190 191 /* 192 * 3.4 - Modal content 193 */ 194 .bp-hello-content { 195 padding: 0 25px; 196 197 // Force scrolling. 198 height: calc(100% - 58px); 199 overflow-y: auto; 200 -webkit-overflow-scrolling: touch; 201 } 202 203 /*------------------------------------------------------------------------------ 204 * 4.0 - Content styles 205 *----------------------------------------------------------------------------*/ 206 207 /* 208 * 4.1 - Backdrop and container 209 */ 210 #bp-hello-backdrop { 211 background-color: rgba(0, 0, 0, 0.8); 212 transition: opacity 0.15s ease-out; 213 } 214 215 #bp-hello-container { 216 background-color: rgb(255, 255, 255); 217 } 218 219 /* 220 * 4.2 - Footer content 221 */ 222 .bp-hello-footer { 223 border-radius: 0 0 3px 3px; 224 background-color: rgb(255, 255, 255); 225 border-top: 1px solid var(--bp-hello-color-secondary); 226 padding: 6px 25px; 227 228 p { 229 font-size: 15px; 230 } 231 } 232 233 .bp-hello-social-cta { 234 text-align: left; 235 } 236 237 .bp-hello-social-links { 238 text-align: right; 239 } 240 241 .bp-hello-social { 242 243 li { 244 245 a { 246 text-decoration: none; 247 } 248 } 249 } 250 251 /* 252 * 4.3 - Header content 253 */ 254 .bp-hello-header { 255 padding: 6px 25px; 256 257 h1 { 258 width: calc(100% - 51px); // Approx. width of "X" button block. 259 } 260 } 261 262 #bp-hello-container { 263 264 .bp-hello-header { 265 border-bottom: 1px solid var(--bp-hello-color-secondary); 266 } 267 } 268 269 .bp-hello-title { 270 text-align: left; 271 } 272 273 .bp-hello-close { 274 position: absolute; 275 top: 20px; 276 right: 25px; 277 text-align: right; 278 279 a { 280 text-decoration: none; 281 } 282 } 283 284 /* 285 * 4.4 - Content content 286 */ 287 .bp-hello-content { 288 background-color: rgb(255, 255, 255); 289 } 290 291 /*------------------------------------------------------------------------------ 292 * 5.0 - Media 293 *----------------------------------------------------------------------------*/ 294 .bp-hello-content { 295 296 img { 297 border-radius: 2px; 298 max-width: 100%; 299 } 300 } 301 302 /*------------------------------------------------------------------------------ 303 * 6.0 - Media Queries 304 *----------------------------------------------------------------------------*/ 305 306 /* 307 * 6.1 - Desktop Medium 308 */ 309 @media only screen and (min-width: 1024px) { 310 311 #bp-hello-backdrop { 312 display: block; 313 } 314 315 #bp-hello-container { 316 position: fixed; 317 top: 60px; 318 left: var(--bp-hello-container-size); 319 right: var(--bp-hello-container-size); 320 bottom: 30px; 321 322 border-radius: 3px; 323 324 .bp-hello-header { 325 326 h1 { 327 line-height: inherit; 328 } 329 } 330 } 331 332 .bp-hello-header { 333 height: auto; 334 max-height: inherit; 335 336 padding: 6px 30px; 337 } 338 339 .bp-hello-close { 340 right: 30px; 341 342 a { 343 344 &.close-modal:before { 345 line-height: 0.7; 346 } 347 } 348 } 349 350 .bp-hello-footer { 351 position: fixed; // Fixed position above "content" div. 352 left: var(--bp-hello-container-size); 353 right: var(--bp-hello-container-size); 354 bottom: 30px; 355 z-index: 10000; // See #bp-hello-backdrop 356 357 height: auto; 358 max-height: inherit; 359 360 padding: 6px 30px; 361 } 362 363 .bp-hello-content { 364 // Very very approx. height of header and footer. 365 height: calc(100% - 90px); 366 padding: 0 30px; 367 368 p { 369 font-size: 14px; 370 } 371 } 372 } 373 374 /** 375 * 6.2 - Desktop Large 376 */ 377 @media screen and (min-width: 1280px) { 378 379 #bp-hello-container, 380 .bp-hello-footer { 381 // Approx. max-width of modal at Desktop Medium size. 382 left: calc((100% - 896px) / 2); 383 right: calc((100% - 896px) / 2); 384 } 385 } -
src/bp-core/classes/class-bp-admin.php
diff --git a/src/bp-core/classes/class-bp-admin.php b/src/bp-core/classes/class-bp-admin.php index 515b8903a..b47053704 100644
a b class BP_Admin { 155 155 // Add settings. 156 156 add_action( 'bp_register_admin_settings', array( $this, 'register_admin_settings' ) ); 157 157 158 // Add a link to BuddyPress About page tothe admin bar.159 add_action( 'admin_bar_menu', array( $this, 'admin_bar_about_link' ), 1 5);158 // Add a link to BuddyPress Hello in the admin bar. 159 add_action( 'admin_bar_menu', array( $this, 'admin_bar_about_link' ), 100 ); 160 160 161 161 // Add a description of new BuddyPress tools in the available tools page. 162 162 add_action( 'tool_box', 'bp_core_admin_available_tools_intro' ); … … class BP_Admin { 169 169 add_filter( 'manage_' . bp_get_email_post_type() . '_posts_columns', array( $this, 'emails_register_situation_column' ) ); 170 170 add_action( 'manage_' . bp_get_email_post_type() . '_posts_custom_column', array( $this, 'emails_display_situation_column_data' ), 10, 2 ); 171 171 172 // BuddyPress Hello. 173 add_action( 'admin_footer', array( $this, 'about_screen' ) ); 174 172 175 /* Filters ***********************************************************/ 173 176 174 177 // Add link to settings page. … … class BP_Admin { 197 200 return; 198 201 } 199 202 200 // About.201 add_dashboard_page(202 __( 'Welcome to BuddyPress', 'buddypress' ),203 __( 'Welcome to BuddyPress', 'buddypress' ),204 'manage_options',205 'bp-about',206 array( $this, 'about_screen' )207 );208 209 // Credits.210 add_dashboard_page(211 __( 'Welcome to BuddyPress', 'buddypress' ),212 __( 'Welcome to BuddyPress', 'buddypress' ),213 'manage_options',214 'bp-credits',215 array( $this, 'credits_screen' )216 );217 218 203 $hooks = array(); 219 204 220 205 // Changed in BP 1.6 . See bp_core_admin_backpat_menu(). … … class BP_Admin { 264 249 'bp_core_admin_settings' 265 250 ); 266 251 252 // Credits. 253 $hooks[] = add_submenu_page( 254 $this->settings_page, 255 __( 'BuddyPress Credits', 'buddypress' ), 256 __( 'BuddyPress Credits', 'buddypress' ), 257 $this->capability, 258 'bp-credits', 259 array( $this, 'credits_screen' ) 260 ); 261 267 262 // For consistency with non-Multisite, we add a Tools menu in 268 263 // the Network Admin as a home for our Tools panel. 269 264 if ( is_multisite() && bp_core_do_network_admin() ) { … … class BP_Admin { 464 459 } 465 460 466 461 /** 467 * Add a link to BuddyPress About pageto the admin bar.462 * Add a link to BuddyPress Hello to the admin bar. 468 463 * 469 464 * @since 1.9.0 465 * @since 3.0.0 Hooked at priority 100 (was 15). 470 466 * 471 * @param WP_Admin_Bar $wp_admin_bar As passed to 'admin_bar_menu'.467 * @param WP_Admin_Bar $wp_admin_bar 472 468 */ 473 469 public function admin_bar_about_link( $wp_admin_bar ) { 474 if ( is_user_logged_in() ) { 475 $wp_admin_bar->add_menu( array( 476 'parent' => 'wp-logo', 477 'id' => 'bp-about', 478 'title' => esc_html__( 'About BuddyPress', 'buddypress' ), 479 'href' => add_query_arg( array( 'page' => 'bp-about' ), bp_get_admin_url( 'index.php' ) ), 480 ) ); 470 if ( ! is_user_logged_in() ) { 471 return; 481 472 } 473 474 $wp_admin_bar->add_menu( array( 475 'parent' => 'wp-logo', 476 'id' => 'bp-about', 477 'title' => esc_html_x( 'Hello, BuddyPress!', 'Colloquial alternative to "learn about BuddyPress"', 'buddypress' ), 478 'href' => bp_get_admin_url( '?hello=buddypress' ), 479 'meta' => array( 480 'class' => 'say-hello-buddypress', 481 ), 482 ) ); 482 483 } 483 484 484 485 /** … … class BP_Admin { 500 501 // Add a few links to the existing links array. 501 502 return array_merge( $links, array( 502 503 'settings' => '<a href="' . esc_url( add_query_arg( array( 'page' => 'bp-components' ), bp_get_admin_url( $this->settings_page ) ) ) . '">' . esc_html__( 'Settings', 'buddypress' ) . '</a>', 503 'about' => '<a href="' . esc_url( add_query_arg( array( 'page' => 'bp-about' ), bp_get_admin_url( 'index.php' ) ) ) . '">' . esc_html__( 'About','buddypress' ) . '</a>'504 'about' => '<a href="' . esc_url( bp_get_admin_url( '?hello=buddypress' ) ) . '">' . esc_html_x( 'Hello, BuddyPress!', 'Colloquial alternative to "learn about BuddyPress"', 'buddypress' ) . '</a>' 504 505 ) ); 505 506 } 506 507 … … class BP_Admin { 514 515 // Settings pages. 515 516 remove_submenu_page( $this->settings_page, 'bp-page-settings' ); 516 517 remove_submenu_page( $this->settings_page, 'bp-settings' ); 518 remove_submenu_page( $this->settings_page, 'bp-credits' ); 517 519 518 520 // Network Admin Tools. 519 521 remove_submenu_page( 'network-tools', 'network-tools' ); … … class BP_Admin { 530 532 */ 531 533 public function enqueue_scripts() { 532 534 wp_enqueue_style( 'bp-admin-common-css' ); 535 536 // BuddyPress Hello 537 if ( get_current_screen()->id === 'dashboard' && ! empty( $_GET['hello'] ) && $_GET['hello'] === 'buddypress' ) { 538 wp_enqueue_style( 'bp-hello-css' ); 539 wp_enqueue_script( 'bp-hello-js' ); 540 } 533 541 } 534 542 535 543 /** About *****************************************************************/ 536 544 537 545 /** 538 * Output the about screen.546 * Output the BuddyPress Hello template. 539 547 * 540 * @since 1.7.0 548 * @since 1.7.0 Screen content. 549 * @since 3.0.0 Now outputs BuddyPress Hello template. 541 550 */ 542 551 public function about_screen() { 552 if ( get_current_screen()->id !== 'dashboard' || empty( $_GET['hello'] ) || $_GET['hello'] !== 'buddypress' ) { 553 return; 554 } 543 555 ?> 544 556 545 <div class="wrap about-wrap"> 546 547 <?php self::welcome_text(); ?> 548 549 <?php self::tab_navigation( __METHOD__ ); ?> 550 551 <?php if ( self::is_new_install() ) : ?> 552 553 <div id="welcome-panel" class="welcome-panel"> 554 <div class="welcome-panel-content"> 555 <h3 style="margin:0;"><?php _e( 'Getting Started with BuddyPress', 'buddypress' ); ?></h3> 556 <div class="welcome-panel-column-container"> 557 <div class="welcome-panel-column"> 558 <h4><?php _e( 'Configure BuddyPress', 'buddypress' ); ?></h4> 559 <ul> 560 <li><?php printf( 561 '<a href="%s" class="welcome-icon welcome-edit-page">' . __( 'Set Up Components', 'buddypress' ) . '</a>', esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-components' ), $this->settings_page ) ) ) 562 ); ?></li> 563 <li><?php printf( 564 '<a href="%s" class="welcome-icon welcome-edit-page">' . __( 'Assign Components to Pages', 'buddypress' ) . '</a>', esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-page-settings' ), $this->settings_page ) ) ) 565 ); ?></li> 566 <li><?php printf( 567 '<a href="%s" class="welcome-icon welcome-edit-page">' . __( 'Customize Settings', 'buddypress' ) . '</a>', esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-settings' ), $this->settings_page ) ) ) 568 ); ?></li> 569 </ul> 570 <a class="button button-primary button-hero" style="margin-bottom:20px;margin-top:0;" href="<?php echo esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-components' ), $this->settings_page ) ) ); ?>"><?php _e( 'Get Started', 'buddypress' ); ?></a> 571 </div> 572 <div class="welcome-panel-column"> 573 <h4><?php _e( 'Administration Tools', 'buddypress' ); ?></h4> 574 <ul> 575 <?php if ( bp_is_active( 'members' ) ) : ?> 576 <li><?php printf( '<a href="%s" class="welcome-icon welcome-add-page">' . __( 'Add User Profile Fields', 'buddypress' ) . '</a>', esc_url( add_query_arg( array( 'page' => 'bp-profile-setup' ), bp_get_admin_url( 'users.php' ) ) ) ); ?></li> 577 <?php endif; ?> 578 <li><?php printf( '<a href="%s" class="welcome-icon welcome-add-page">' . __( 'Manage User Signups', 'buddypress' ) . '</a>', esc_url( add_query_arg( array( 'page' => 'bp-signups' ), bp_get_admin_url( 'users.php' ) ) ) ); ?></li> 579 <?php if ( bp_is_active( 'activity' ) ) : ?> 580 <li><?php printf( '<a href="%s" class="welcome-icon welcome-add-page">' . __( 'Moderate Activity Streams', 'buddypress' ) . '</a>', esc_url( add_query_arg( array( 'page' => 'bp-activity' ), bp_get_admin_url( 'admin.php' ) ) ) ); ?></li> 581 <?php endif; ?> 582 <?php if ( bp_is_active( 'groups' ) ) : ?> 583 <li><?php printf( '<a href="%s" class="welcome-icon welcome-add-page">' . __( 'Manage Groups', 'buddypress' ) . '</a>', esc_url( add_query_arg( array( 'page' => 'bp-groups' ), bp_get_admin_url( 'admin.php' ) ) ) ); ?></li> 584 <?php endif; ?> 585 <li><?php printf( '<a href="%s" class="welcome-icon welcome-add-page">' . __( 'Repair Data', 'buddypress' ) . '</a>', esc_url( add_query_arg( array( 'page' => 'bp-tools' ), bp_get_admin_url( 'tools.php' ) ) ) ); ?> 586 </li> 587 </ul> 588 </div> 589 <div class="welcome-panel-column welcome-panel-last"> 590 <h4><?php _e( 'Community and Support', 'buddypress' ); ?></h4> 591 <p class="welcome-icon welcome-learn-more" style="margin-right:10px"><?php _e( 'Looking for help? The <a href="https://codex.buddypress.org/">BuddyPress Codex</a> has you covered.', 'buddypress' ) ?></p> 592 <p class="welcome-icon welcome-learn-more" style="margin-right:10px"><?php _e( 'Can’t find what you need? Stop by <a href="https://buddypress.org/support/">our support forums</a>, where active BuddyPress users and developers are waiting to share tips and more.', 'buddypress' ) ?></p> 593 </div> 594 </div> 595 </div> 596 </div> 597 598 <?php endif; ?> 599 600 <div class="bp-features-section"> 601 602 <h3 class="headline-title"><?php esc_html_e( 'For Developers & Site Builders', 'buddypress' ); ?></h3> 603 604 <div class="bp-feature"> 605 <span class="dashicons dashicons-groups" aria-hidden="true"></span> 606 <h4 class="feature-title"><?php esc_html_e( 'Edit Group Slug', 'buddypress' ); ?></h4> 607 <p><?php esc_html_e( 'Allow administrators to change group names and permalinks. Navigate to the Groups screen in the wp-admin dashboard, click on the Edit link under the Group name, and adjust as needed.', 'buddypress' ); ?></p> 608 </div> 609 610 <div class="bp-feature opposite"> 611 <span class="dashicons dashicons-admin-users" aria-hidden="true"></span> 612 <h4 class="feature-title"><?php esc_html_e( 'Improve accessibility of Extended Profile Fields', 'buddypress' ); ?></h4> 613 <p><?php esc_html_e( 'Related form fields are grouped together in fieldsets and all interactive form controls are associated with necessary ARIA states and properties.', 'buddypress' ); ?></p> 614 </div> 557 <div id="bp-hello-backdrop" style="display: none;"> 558 </div> 615 559 616 <div class="bp-feature">617 <span class="dashicons dashicons-email" aria-hidden="true"></span>618 <h4 class="feature-title"><?php esc_html_e( 'Send group invitation only once per user', 'buddypress' ); ?></h4>619 < p><?php esc_html_e( 'Prevent duplicate group invitations from being sent to a user by double-checking if a group invitation has already been sent to that user.', 'buddypress' ); ?></p>560 <div id="bp-hello-container" style="display: none;"> 561 <div class="bp-hello-header"> 562 <div class="bp-hello-close"> 563 <a class="close-modal" href="#" title="<?php echo esc_attr( 'Close pop-up', 'buddypress' ); ?>"><span class="screen-reader-text"><?php esc_html_e( 'Close pop-up', 'buddypress' ); ?></span></a> 620 564 </div> 621 565 622 <div class="bp-feature opposite"> 623 <span class="dashicons dashicons-testimonial" aria-hidden="true"></span> 624 <h4 class="feature-title"><?php esc_html_e( 'Tooltips Usable for All Devices', 'buddypress' ); ?></h4> 625 626 <p><?php esc_html_e( 'Replaced HTML title attributes with tooltips which provide additional information and visual cues where needed on mouse hover and keyboard focus events.', 'buddypress' ); 627 ?></p> 566 <div class="bp-hello-title"> 567 <h1><?php esc_html_e( _x( 'New in BuddyPress', 'section heading', 'buddypress' ) ); ?></h1> 628 568 </div> 569 </div> 629 570 571 <div class="bp-hello-content"> 572 <h2><?php esc_html_e( __( 'Say hello to “Nouveau”!', 'buddypress' ) ); ?></h2> 573 <p> 574 <?php 575 printf( 576 __( 'A bold reimagining of our legacy templates, Nouveau is our celebration of <a href="%s">10 years of BuddyPress</a>! Nouveau delivers modern markup with fresh JavaScript-powered templates, and full integration with WordPress\' Customizer, allowing more out-of-the-box control of your BuddyPress content than ever before.', 'buddypress' ), 577 esc_url( 'https://buddypress.org/2018/03/10-years/' ) 578 ); 579 ?> 580 </p> 581 <p><?php esc_html_e( 'Nouveau provides vertical and horizontal layout options for BuddyPress navigation, and for the component directories, you can choose between a grid layout, and a classic flat list.', 'buddypress' ); ?></p> 582 <p> 583 <?php 584 printf( 585 __( 'Nouveau is fully compatible with WordPress. Existing BuddyPress themes have been written for our legacy template pack, and until they are updated, resolve any compatibility issues by choosing the legacy template pack option in <a href="%s">Settings > BuddyPress</a>.', 'buddypress' ), 586 esc_url( bp_get_admin_url( 'admin.php?page=bp-settings' ) ) 587 ); 588 ?> 589 </p> 590 <img srcset="https://via.placeholder.com/1024x576 1024w, https://via.placeholder.com/2048x1152 2048w" src="https://placekitten.com/1024x576" sizes="(max-width: 1023px) 90vw, 65vw" alt="a rad wolf" /> 591 592 <h2><?php esc_html_e( _x( 'Control site-wide notices from your dashboard', 'section heading', 'buddypress' ) ); ?></h2> 593 <p><?php esc_html_e( 'Site Notices are a feature within the Private Messaging component that allows community managers to share important messages with all members of their community. With Nouveau, the management interface for Site Notices has been removed from the front-end theme templates.', 'buddypress' ); ?></p> 594 595 <?php if ( bp_is_active( 'messages' ) ) : ?> 596 <p> 597 <?php 598 printf( 599 __( 'Explore the new management interface at <a href="%s">Users > Site Notices</a>.', 'buddypress' ), 600 esc_url( bp_get_admin_url( 'users.php?page=bp-notices' ) ) 601 ); 602 ?> 603 </p> 604 <?php endif; ?> 605 606 <h2><?php esc_html_e( __( 'New profile field type: telephone numbers', 'buddypress' ) ); ?></h2> 607 <p><?php esc_html_e( 'A new telephone number field type has been added to the Extended Profiles component, with support for all international number formats. With a modern web browser, your members can use this field type to touch-to-dial a number directly.', 'buddypress' ); ?></p> 608 609 <h2><?php esc_html_e( __( "BuddyPress: leaner, faster, stronger", 'buddypress' ) ); ?></h2> 610 <p><?php esc_html_e( 'With every BuddyPress version, we strive to make performance improvements alongside new features and fixes; this version is no exception. Memory use has been optimised — within active components, we now only load each individual code file when it\'s needed, not before.', 'buddypress' ); ?></p> 611 <p> 612 <?php 613 printf( 614 __( 'Most notably, the <a href="%s">Legacy Forums component has been removed</a> after 9 years of service. If your site was using Legacy Forums, you need to <a href="%s">migrate to the bbPress plugin</a>.', 'buddypress' ), 615 esc_url( 'https://bpdevel.wordpress.com/2017/12/07/legacy-forums-support-will-be/' ), 616 esc_url( 'https://codex.buddypress.org/getting-started/guides/migrating-from-old-forums-to-bbpress-2/' ) 617 ); 618 ?> 619 </p> 620 621 <p><em> 622 <?php 623 printf( 624 __( 'To read the full list of features, fixes, and changes in this version of BuddyPress, <a href="%s">visit Trac</a>.', 'buddypress' ), 625 esc_url( 'https://buddypress.trac.wordpress.org/query?group=status&milestone=3.0' ) 626 ); 627 ?> 628 </em></p> 629 630 <h2><?php esc_html_e( _x( 'Your feedback', 'screen heading', 'buddypress' ) ); ?></h2> 631 <p> 632 <?php 633 printf( 634 __( ' How are you using BuddyPress? Recieving your feedback and suggestions for future versions of BuddyPress genuinely motivates and encourages our contributors. Please <a href="%s">share your feedback</a> about this version of BuddyPress on our website. ', 'buddypress' ), 635 esc_url( 'https://buddypress.org/support/' ) 636 ); 637 ?> 638 </p> 639 <p><?php esc_html_e( 'Thank you for using BuddyPress! 😊', 'buddypress' ); ?></p> 640 641 <br /><br /> 630 642 </div> 631 643 632 <div class="bp-changelog-section"> 633 634 <h3 class="changelog-title"><?php esc_html_e( 'More under the hood …', 'buddypress' ); ?></h3> 635 <div class="bp-changelog bp-three-column"> 636 <div class="bp-column"> 637 <h4 class="title"><?php esc_html_e( 'Better support for private message thread links in emails', 'buddypress' ); ?></h4> 638 <p><?php esc_html_e( 'Redirect non-authenticated users to the login screen and authenticated users to the message linked.', 'buddypress' ); ?></p> 639 </div> 640 <div class="bp-column"> 641 <h4 class="title"><?php esc_html_e( 'Compatibility with Bootstrap themes', 'buddypress' ); ?></h4> 642 <p><?php esc_html_e( 'Removed issues with BuddyPress-generated content being hidden in the Groups loop and Activity comments in Bootstrap themes.', 'buddypress' ); ?></p> 643 </div> 644 645 <div class="bp-column"> 646 <h4 class="title"><?php esc_html_e( 'Improve profile image uploads', 'buddypress' ); ?></h4> 647 <p><?php esc_html_e( 'Fixed issues with uploading in iOS Safari and uploading files with non-ASCII filenames.', 'buddypress' ); ?></p> 648 </div> 644 <div class="bp-hello-footer"> 645 <div class="bp-hello-social-cta"> 646 <p> 647 <?php 648 printf( 649 _n( 'Built by <a href="%s">%s volunteer</a>.', 'Crafted by <a href="%s">%s volunteers</a>.', 100, 'buddypress' ), 650 esc_url( bp_get_admin_url( 'admin.php?page=bp-credits' ) ), 651 number_format_i18n( 100 ) 652 ); 653 ?> 654 </p> 649 655 </div> 650 656 651 <div class="bp-changelog bp-three-column"> 652 <div class="bp-column"> 653 <h4 class="title"><?php esc_html_e( 'URL compatibility for LightSpeed Servers', 'buddypress' ); ?></h4> 654 <p><?php 655 /* translators: %s: trailingslashit() */ 656 printf( __( 'Audited and changed template link functions to use %s where necessary.', 'buddypress' ), 657 '<code>trailingslashit()</code>' ); 658 ?></p> 659 </div> 660 <div class="bp-column"> 661 <h4 class="title"><?php esc_html_e( 'Template Packs UI in BuddyPress > Settings.', 'buddypress' ); ?></h4> 662 <p><?php esc_html_e( 'Register your new BuddyPress theme package and allow the user to select which template pack to use.', 'buddypress' ); ?></p> 663 </div> 664 665 <div class="bp-column"> 666 <h4 class="title"><?php 667 /* translators: %s: bp_group_link() */ 668 printf( __( 'New template function %s', 'buddypress' ), 669 '<code>bp_group_link()</code>' ); 670 ?></h4> 671 <p><?php esc_html_e( 'Output a group name as a text hyperlink where appropriate.', 'buddypress' ); ?></p> 672 </div> 657 <div class="bp-hello-social-links"> 658 <ul class="bp-hello-social"> 659 <li> 660 <?php 661 printf( 662 '<a class="twitter" title="%1$s" href="%2$s"><span class="screen-reader-text">%3$s</span></a>', 663 esc_attr( 'Follow BuddyPress on Twitter', 'buddypress' ), 664 esc_url( 'https://twitter.com/buddypress' ), 665 esc_html( 'Follow BuddyPress on Twitter', 'buddypress' ) 666 ); 667 ?> 668 </li> 669 670 <li> 671 <?php 672 printf( 673 '<a class="support" title="%1$s" href="%2$s"><span class="screen-reader-text">%3$s</span></a>', 674 esc_attr( 'Visit the Support Forums', 'buddypress' ), 675 esc_url( 'https://buddypress.org/support/' ), 676 esc_html( 'Visit the Support Forums', 'buddypress' ) 677 ); 678 ?> 679 </li> 680 </ul> 673 681 </div> 674 675 682 </div> 676 677 <div class="bp-assets">678 <p><?php _ex( 'Learn more:', 'About screen, website links', 'buddypress' ); ?> <a href="https://buddypress.org/blog/"><?php _ex( 'News', 'About screen, link to project blog', 'buddypress' ); ?></a> • <a href="https://buddypress.org/support/"><?php _ex( 'Support', 'About screen, link to support site', 'buddypress' ); ?></a> • <a href="https://codex.buddypress.org/"><?php _ex( 'Documentation', 'About screen, link to documentation', 'buddypress' ); ?></a> • <a href="https://bpdevel.wordpress.com/"><?php _ex( 'Development Blog', 'About screen, link to development blog', 'buddypress' ); ?></a></p>679 680 <p><?php _ex( 'Twitter:', 'official Twitter accounts:', 'buddypress' ); ?> <a href="https://twitter.com/buddypress/"><?php _ex( 'BuddyPress', '@buddypress twitter account name', 'buddypress' ); ?></a> • <a href="https://twitter.com/bptrac/"><?php _ex( 'Trac', '@bptrac twitter account name', 'buddypress' ); ?></a> • <a href="https://twitter.com/buddypressdev/"><?php _ex( 'Development', '@buddypressdev twitter account name', 'buddypress' ); ?></a></p>681 </div>682 683 683 </div> 684 684 685 685 <?php … … class BP_Admin { 696 696 public function credits_screen() { 697 697 ?> 698 698 699 <div class="wrap about-wrap">699 <div class="wrap bp-about-wrap"> 700 700 701 <?php self::welcome_text(); ?>701 <h1><?php _e( 'BuddyPress Settings', 'buddypress' ); ?> </h1> 702 702 703 <?php self::tab_navigation( __METHOD__ ); ?>703 <h2 class="nav-tab-wrapper"><?php bp_core_admin_tabs( __( 'Credits', 'buddypress' ) ); ?></h2> 704 704 705 705 <p class="about-description"><?php _e( 'BuddyPress is created by a worldwide network of friendly folks like these.', 'buddypress' ); ?></p> 706 706 … … class BP_Admin { 876 876 <?php 877 877 } 878 878 879 /**880 * Output welcome text and badge for What's New and Credits pages.881 *882 * @since 2.2.0883 */884 public static function welcome_text() {885 886 // Switch welcome text based on whether this is a new installation or not.887 $welcome_text = ( self::is_new_install() )888 ? __( 'Thank you for installing BuddyPress! BuddyPress adds community features to WordPress. Member Profiles, Activity Streams, Direct Messaging, Notifications, and more!', 'buddypress' )889 : __( 'Thank you for updating! BuddyPress %s has many new improvements that you will enjoy.', 'buddypress' );890 891 ?>892 893 <h1><?php printf( esc_html__( 'Welcome to BuddyPress %s', 'buddypress' ), self::display_version() ); ?></h1>894 895 <div class="about-text">896 <?php897 if ( self::is_new_install() ) {898 echo $welcome_text;899 } else {900 printf( $welcome_text, self::display_version() );901 }902 ?>903 </div>904 905 <div class="bp-badge"></div>906 907 <?php908 }909 910 /**911 * Output tab navigation for `What's New` and `Credits` pages.912 *913 * @since 2.2.0914 *915 * @param string $tab Tab to highlight as active.916 */917 public static function tab_navigation( $tab = 'whats_new' ) {918 ?>919 920 <h2 class="nav-tab-wrapper">921 <a class="nav-tab <?php if ( 'BP_Admin::about_screen' === $tab ) : ?>nav-tab-active<?php endif; ?>" href="<?php echo esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-about' ), 'index.php' ) ) ); ?>">922 <?php esc_html_e( 'What’s New', 'buddypress' ); ?>923 </a><a class="nav-tab <?php if ( 'BP_Admin::credits_screen' === $tab ) : ?>nav-tab-active<?php endif; ?>" href="<?php echo esc_url( bp_get_admin_url( add_query_arg( array( 'page' => 'bp-credits' ), 'index.php' ) ) ); ?>">924 <?php esc_html_e( 'Credits', 'buddypress' ); ?>925 </a>926 </h2>927 928 <?php929 }930 931 879 /** Emails ****************************************************************/ 932 880 933 881 /** … … class BP_Admin { 1077 1025 'file' => "{$url}customizer-controls{$min}.css", 1078 1026 'dependencies' => array(), 1079 1027 ), 1080 ) );1081 1028 1029 // 3.0 1030 'bp-hello-css' => array( 1031 'file' => "{$url}hello{$min}.css", 1032 'dependencies' => array( 'bp-admin-common-css' ), 1033 ), 1034 ) ); 1082 1035 1083 1036 $version = bp_get_version(); 1084 1037 … … class BP_Admin { 1115 1068 'dependencies' => array( 'jquery' ), 1116 1069 'footer' => true, 1117 1070 ), 1071 1072 // 3.0 1073 'bp-hello-js' => array( 1074 'file' => "{$url}hello{$min}.js", 1075 'dependencies' => array(), 1076 'footer' => true, 1077 ), 1118 1078 ) ); 1119 1079 1120 1080 $version = bp_get_version();