From 980b2be36e30b28cfd04244c6f9d03ff99645da9 Mon Sep 17 00:00:00 2001
From: Kyle Maurer <kyle@realbigmarketing.com>
Date: Tue, 4 Nov 2014 14:07:35 -0500
Subject: [PATCH] Added fields for slides and video to session info meta box
---
plugins/wc-post-types/wc-post-types.php | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/plugins/wc-post-types/wc-post-types.php b/plugins/wc-post-types/wc-post-types.php
index 9241d2d..338de43 100755
|
a
|
b
|
class WordCamp_Post_Types_Plugin { |
| 1331 | 1331 | $session_time = absint( get_post_meta( $post->ID, '_wcpt_session_time', true ) ); |
| 1332 | 1332 | $session_time = ( $session_time ) ? date( 'Y-m-d H:i:s', $session_time ) : ''; |
| 1333 | 1333 | $session_type = get_post_meta( $post->ID, '_wcpt_session_type', true ); |
| | 1334 | $session_slides = get_post_meta( $post->ID, '_wcpt_session_slides', true ); |
| | 1335 | $session_video = get_post_meta( $post->ID, '_wcpt_session_video', true ); |
| 1334 | 1336 | ?> |
| 1335 | 1337 | <?php wp_nonce_field( 'edit-session-info', 'wcpt-meta-session-info' ); ?> |
| 1336 | 1338 | <p> |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 1345 | 1347 | <option value="custom" <?php selected( $session_type, 'custom' ); ?>><?php _e( 'Break, Lunch, etc.', 'wordcamporg' ); ?></option> |
| 1346 | 1348 | </select> |
| 1347 | 1349 | </p> |
| | 1350 | <p> |
| | 1351 | <label for="wcpt-session-slides"><?php _e( 'Slides URL:', 'wordcamporg' ); ?></label> |
| | 1352 | <input type="text" class="widefat" id="wcpt-session-slides" name="wcpt-session-slides" value="<?php echo esc_url( $session_slides ); ?>" /> |
| | 1353 | </p> |
| | 1354 | <p> |
| | 1355 | <label for="wcpt-session-video"><?php _e( 'Video URL:', 'wordcamporg' ); ?></label> |
| | 1356 | <input type="text" class="widefat" id="wcpt-session-video" name="wcpt-session-video" value="<?php echo esc_url( $session_video ); ?>" /> |
| | 1357 | </p> |
| 1348 | 1358 | <?php |
| 1349 | 1359 | } |
| 1350 | 1360 | |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 1438 | 1448 | |
| 1439 | 1449 | // Update session time. |
| 1440 | 1450 | if ( isset( $_POST['wcpt-meta-session-info'] ) && wp_verify_nonce( $_POST['wcpt-meta-session-info'], 'edit-session-info' ) ) { |
| | 1451 | |
| | 1452 | // Update session time |
| 1441 | 1453 | $session_time = sanitize_text_field( $_POST['wcpt-session-time'] ); |
| 1442 | 1454 | $session_time = strtotime( $session_time ); |
| 1443 | 1455 | update_post_meta( $post_id, '_wcpt_session_time', $session_time ); |
| 1444 | 1456 | |
| | 1457 | // Update session type |
| 1445 | 1458 | $session_type = sanitize_text_field( $_POST['wcpt-session-type'] ); |
| 1446 | 1459 | if ( ! in_array( $session_type, array( 'session', 'custom' ) ) ) |
| 1447 | 1460 | $session_type = 'session'; |
| 1448 | 1461 | |
| 1449 | 1462 | update_post_meta( $post_id, '_wcpt_session_type', $session_type ); |
| | 1463 | |
| | 1464 | // Update session slides link |
| | 1465 | $session_slides = sanitize_text_field( $_POST['wcpt-session-slides'] ); |
| | 1466 | update_post_meta( $post_id, '_wcpt_session_slides', $session_slides ); |
| | 1467 | |
| | 1468 | // Update session video link |
| | 1469 | $session_video = sanitize_text_field( $_POST['wcpt-session-video'] ); |
| | 1470 | update_post_meta( $post_id, '_wcpt_session_video', $session_video ); |
| 1450 | 1471 | } |
| 1451 | 1472 | |
| 1452 | 1473 | // Allowed outside of $_POST. If anything updates a session, make sure |
--
1.8.4.2
From 3db75f946908c21d6e98a6a197b3b5a911f1bd1d Mon Sep 17 00:00:00 2001
From: Kyle Maurer <kyle@realbigmarketing.com>
Date: Tue, 4 Nov 2014 17:32:59 -0500
Subject: [PATCH] Small adjustments recommended by Ian Dunn. Added links to
[sessions] shortcode
---
plugins/wc-post-types/wc-post-types.php | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/plugins/wc-post-types/wc-post-types.php b/plugins/wc-post-types/wc-post-types.php
index 338de43..7fd6f58 100755
|
a
|
b
|
class WordCamp_Post_Types_Plugin { |
| 826 | 826 | $attr = shortcode_atts( array( |
| 827 | 827 | 'show_meta' => false, |
| 828 | 828 | 'show_avatars' => false, |
| | 829 | 'show_links' => true, |
| 829 | 830 | 'avatar_size' => 100, |
| 830 | 831 | 'track' => 'all', |
| 831 | 832 | 'speaker_link' => 'wporg', // anchor|wporg|permalink|none |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 835 | 836 | ), $attr ); |
| 836 | 837 | |
| 837 | 838 | // Convert bools to real booleans. |
| 838 | | $bools = array( 'show_meta', 'show_avatars' ); |
| | 839 | $bools = array( 'show_meta', 'show_avatars', 'show_links' ); |
| 839 | 840 | foreach ( $bools as $key ) |
| 840 | 841 | $attr[ $key ] = $this->str_to_bool( $attr[ $key ] ); |
| 841 | 842 | |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 957 | 958 | if ( ! empty( $session_meta ) ) |
| 958 | 959 | $session_meta = sprintf( '<p class="wcpt-session-meta">%s</p>', $session_meta ); |
| 959 | 960 | } |
| | 961 | |
| | 962 | // Should we output links? |
| | 963 | if ( $attr['show_links'] != false ) { |
| | 964 | $slides = get_post_meta( $post->ID, '_wcpt_session_slides', true ); |
| | 965 | $slides = ( $slides != '' ? '<a href="' . $slides . '">Slides</a>' : '' ); |
| | 966 | $video = get_post_meta( $post->ID, '_wcpt_session_video', true ); |
| | 967 | $video = ( $video != '' ? '<a href="' . $video . '">Video</a>' : '' ); |
| | 968 | $spacer = ( $slides == '' || $video == '' ? '' : ' | ' ); |
| | 969 | |
| | 970 | $links = '<p>' . $slides . $spacer . $video . '</p>'; |
| | 971 | } else { |
| | 972 | $links = ''; |
| | 973 | } |
| 960 | 974 | ?> |
| 961 | 975 | |
| 962 | 976 | <div id="wcorg-session-<?php the_ID(); ?>" class="wcorg-session" > |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 966 | 980 | <?php echo $session_meta; ?> |
| 967 | 981 | <?php echo $speakers_avatars; ?> |
| 968 | 982 | <?php the_content(); ?> |
| | 983 | <?php echo $links; ?> |
| 969 | 984 | </div> |
| 970 | 985 | </div> |
| 971 | 986 | |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 1207 | 1222 | add_meta_box( 'speaker-info', __( 'Speaker Info', 'wordcamporg' ), array( $this, 'metabox_speaker_info' ), 'wcb_speaker', 'side' ); |
| 1208 | 1223 | add_meta_box( 'organizer-info', __( 'Organizer Info', 'wordcamporg' ), array( $this, 'metabox_organizer_info' ), 'wcb_organizer', 'side' ); |
| 1209 | 1224 | add_meta_box( 'speakers-list', __( 'Speakers', 'wordcamporg' ), array( $this, 'metabox_speakers_list' ), 'wcb_session', 'side' ); |
| 1210 | | add_meta_box( 'session-info', __( 'Session Info', 'wordcamporg' ), array( $this, 'metabox_session_info' ), 'wcb_session', 'side' ); |
| | 1225 | add_meta_box( 'session-info', __( 'Session Info', 'wordcamporg' ), array( $this, 'metabox_session_info' ), 'wcb_session', 'normal' ); |
| 1211 | 1226 | add_meta_box( 'sponsor-info', __( 'Sponsor Info', 'wordcampbase' ), array( $this, 'metabox_sponsor_info' ), 'wcb_sponsor', 'side' ); |
| 1212 | 1227 | } |
| 1213 | 1228 | |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 1352 | 1367 | <input type="text" class="widefat" id="wcpt-session-slides" name="wcpt-session-slides" value="<?php echo esc_url( $session_slides ); ?>" /> |
| 1353 | 1368 | </p> |
| 1354 | 1369 | <p> |
| 1355 | | <label for="wcpt-session-video"><?php _e( 'Video URL:', 'wordcamporg' ); ?></label> |
| | 1370 | <label for="wcpt-session-video"><?php _e( 'WordPress.TV URL:', 'wordcamporg' ); ?></label> |
| 1356 | 1371 | <input type="text" class="widefat" id="wcpt-session-video" name="wcpt-session-video" value="<?php echo esc_url( $session_video ); ?>" /> |
| 1357 | 1372 | </p> |
| 1358 | 1373 | <?php |
--
1.8.4.2
From bfc4315a90e3e22027ceb1dc72fc73380abecad3 Mon Sep 17 00:00:00 2001
From: Kyle Maurer <kyle@realbigmarketing.com>
Date: Tue, 4 Nov 2014 18:33:08 -0500
Subject: [PATCH] Do not save video URL if not from wp.tv
---
plugins/wc-post-types/wc-post-types.php | 2 ++
1 file changed, 2 insertions(+)
diff --git a/plugins/wc-post-types/wc-post-types.php b/plugins/wc-post-types/wc-post-types.php
index 7fd6f58..f06bf81 100755
|
a
|
b
|
class WordCamp_Post_Types_Plugin { |
| 1369 | 1369 | <p> |
| 1370 | 1370 | <label for="wcpt-session-video"><?php _e( 'WordPress.TV URL:', 'wordcamporg' ); ?></label> |
| 1371 | 1371 | <input type="text" class="widefat" id="wcpt-session-video" name="wcpt-session-video" value="<?php echo esc_url( $session_video ); ?>" /> |
| | 1372 | <span style="display: block; margin-top: 4px;" class="description">Note: must be a valid WordPress.TV URL</span> |
| 1372 | 1373 | </p> |
| 1373 | 1374 | <?php |
| 1374 | 1375 | } |
| … |
… |
class WordCamp_Post_Types_Plugin { |
| 1482 | 1483 | |
| 1483 | 1484 | // Update session video link |
| 1484 | 1485 | $session_video = sanitize_text_field( $_POST['wcpt-session-video'] ); |
| | 1486 | $session_video = ( strpos( $session_video, 'wordpress.tv/' ) !== false ? $session_video : '' ); |
| 1485 | 1487 | update_post_meta( $post_id, '_wcpt_session_video', $session_video ); |
| 1486 | 1488 | } |
| 1487 | 1489 | |