Version Description
- December 24th, 2014 =
- Enhancement: Implemented premium support licensing. Any issues that require immediate response, or custom code should purchase a support license.
- Enhancement: Added a new filter to customize the announcement slug (possibly for SEO purposes) (timeline-express-slug , check documentation for examples)
- Enhancement: Moved settings/support below Timeline Express parent menu item
- Fixed: Errors thrown when announcement images aren't set
- Fixed: Display error where announcements displayed a different date on the backend vs frontend
Download this release
Release Info
Developer | eherman24 |
Plugin | Timeline Express |
Version | 1.1.4 |
Comparing to | |
See all releases |
Code changes from version 1.1.3.2 to 1.1.4
- classes/class.timeline-express.php +190 -23
- css/timeline-express-css3-slideshow.css +143 -0
- css/timeline-express-settings.css +123 -8
- css/timeline-express-settings.min.css +2 -2
- css/timeline-express.css +1 -1
- css/timeline-express.min.css +1 -1
- images/evan-herman-mascot.png +0 -0
- images/support/btns-next-prev.png +0 -0
- images/support/pagination.png +0 -0
- images/support/reviews/support-review-1.jpg +0 -0
- images/support/reviews/support-review-2.jpg +0 -0
- images/support/reviews/support-review-3.jpg +0 -0
- images/support/reviews/support-review-4.jpg +0 -0
- images/support/reviews/support-review-5.jpg +0 -0
- images/support/reviews/support-review-6.jpg +0 -0
- images/support/reviews/support-review-7.jpg +0 -0
- images/support/timeline-express-logo-256.png +0 -0
- images/timeline-express-logo-128.png +0 -0
- js/support/jquery.slides.min.js +7 -0
- lib/metabox/about-template.php +2 -2
- lib/support-contact-form.php +49 -0
- pages/options.php +11 -13
- pages/support.php +208 -0
- pages/welcome.php +1 -1
- readme.txt +34 -3
- timeline-express.php +13 -5
classes/class.timeline-express.php
CHANGED
@@ -41,6 +41,7 @@ if(!class_exists("timelineExpressBase"))
|
|
41 |
public function deactivate() {
|
42 |
// clear our re-write rules on deactivate
|
43 |
delete_option('post_type_rules_flased_te-announcements');
|
|
|
44 |
}
|
45 |
|
46 |
public function uninstall() {
|
@@ -62,6 +63,8 @@ if(!class_exists("timelineExpressBase"))
|
|
62 |
// delete options on plugin uninstall
|
63 |
// after we check the 'delete-announcement-posts-on-uninstallation' setting
|
64 |
delete_option( TIMELINE_EXPRESS_OPTION );
|
|
|
|
|
65 |
}
|
66 |
|
67 |
/***** INITIAL SETUP
|
@@ -132,8 +135,165 @@ if(!class_exists("timelineExpressBase"))
|
|
132 |
add_action( 'admin_head', array( &$this , 'timeline_express_add_tinymce' ) );
|
133 |
// filter to keep our plugin auto updated :) , we want all users on the most recent version (the best we can) new @v1.0.8
|
134 |
add_filter( 'auto_update_plugin', array( &$this , 'include_timeline_express_in_auto_updates' ), 10, 2 );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
}
|
136 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
/*
|
138 |
* include_timeline_express_in_auto_updates();
|
139 |
*
|
@@ -166,29 +326,29 @@ if(!class_exists("timelineExpressBase"))
|
|
166 |
// Register our Announcement Custom Post Type
|
167 |
// used to easily manage the announcements on the site
|
168 |
$timeline_express_labels = array(
|
169 |
-
'name' => 'Timeline Express',
|
170 |
-
'singular_name' => 'Announcement', // menu item at the top New > Announcement
|
171 |
-
'menu_name' => 'Timeline Express', // menu name
|
172 |
-
'parent_item_colon' => 'Timeline Express:',
|
173 |
-
'all_items' => 'All Announcements',
|
174 |
-
'view_item' => 'View Announcement',
|
175 |
-
'add_new_item' => 'New Announcement',
|
176 |
-
'add_new' => 'New Announcement',
|
177 |
-
'edit_item' => 'Edit Announcement',
|
178 |
-
'update_item' => 'Update Announcement',
|
179 |
-
'search_items' => 'Search Announcements',
|
180 |
-
'not_found' => 'No Timeline Express Announcements Found',
|
181 |
-
'not_found_in_trash' => 'No Timeline Express Announcements in Trash',
|
182 |
);
|
183 |
$timeline_express_rewrite = array(
|
184 |
-
'slug' => 'announcement',
|
185 |
'with_front' => false,
|
186 |
'pages' => true,
|
187 |
'feeds' => true,
|
188 |
);
|
189 |
$timeline_express_args = array(
|
190 |
'label' => 'timeline-express-announcement',
|
191 |
-
'description' => 'Post type for adding timeline express announcements to the site',
|
192 |
'labels' => $timeline_express_labels,
|
193 |
'supports' => array( 'title', 'editor' ),
|
194 |
'taxonomies' => array(),
|
@@ -516,8 +676,11 @@ if(!class_exists("timelineExpressBase"))
|
|
516 |
$referer = $_SERVER['HTTP_REFERER'];
|
517 |
if ( $announcement_image != '' ) {
|
518 |
$announcement_image_id = $wpdb->get_col($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE guid='%s';", esc_url( $announcement_image) ) );
|
519 |
-
$
|
520 |
-
|
|
|
|
|
|
|
521 |
$custom_content .= '<strong class="timeline-express-single-page-announcement-date">Announcement Date : ' . date( 'M j , Y' , $announcement_date ) . '</strong>';
|
522 |
$custom_content .= $content;
|
523 |
if ( $referer != '' ) {
|
@@ -579,7 +742,7 @@ if(!class_exists("timelineExpressBase"))
|
|
579 |
public function addStyles() {
|
580 |
|
581 |
$screen = get_current_screen();
|
582 |
-
$print_styles_on_screen_array = array( '
|
583 |
|
584 |
if ( in_array( $screen->base , $print_styles_on_screen_array ) || in_array( $screen->id, array( 'edit-te_announcements' ) ) ) {
|
585 |
// Register Styles
|
@@ -594,7 +757,7 @@ if(!class_exists("timelineExpressBase"))
|
|
594 |
public function addScripts() {
|
595 |
$screen = get_current_screen();
|
596 |
global $post;
|
597 |
-
if ( in_array( $screen->base , array('
|
598 |
// enqueue the admin scripts here
|
599 |
// Add the color picker css file
|
600 |
// used to select colors on the settings page
|
@@ -752,7 +915,7 @@ if(!class_exists("timelineExpressBase"))
|
|
752 |
while( $announcement_query->have_posts() ) {
|
753 |
$announcement_query->the_post();
|
754 |
global $post;
|
755 |
-
$announcement_image = esc_url( get_post_meta( $post->ID , 'announcement_image' , true ) );
|
756 |
$button_classes = 'cd-read-more btn btn-primary ';
|
757 |
?>
|
758 |
<div class="cd-timeline-block">
|
@@ -804,7 +967,6 @@ if(!class_exists("timelineExpressBase"))
|
|
804 |
$read_more_button = '';
|
805 |
} else {
|
806 |
$elipses = __( '...' , 'timeline-express' );
|
807 |
-
// $read_more_button = '<a href="' . get_the_permalink() . '" class="cd-read-more btn btn-primary">Read more</a>';
|
808 |
$read_more_button = '<a href="' . get_the_permalink() . '" class="' . apply_filters( "timeline-express-read-more-class" , $button_classes ) . '">' . __( 'Read more' , 'timeline-express' ) . '</a>';
|
809 |
}
|
810 |
?>
|
@@ -849,7 +1011,7 @@ if(!class_exists("timelineExpressBase"))
|
|
849 |
function te_wp_trim_words_retain_formatting( $text, $num_words = 55, $more = null ) {
|
850 |
if ( null === $more )
|
851 |
$more = __( '…' );
|
852 |
-
|
853 |
/* translators: If your word count is based on single characters (East Asian characters),
|
854 |
enter 'characters'. Otherwise, enter 'words'. Do not translate into your own language. */
|
855 |
if ( 'characters' == _x( 'words', 'word count: words or characters?' ) && preg_match( '/^utf\-?8$/i', get_option( 'blog_charset' ) ) ) {
|
@@ -893,9 +1055,11 @@ if(!class_exists("timelineExpressBase"))
|
|
893 |
public function addAdministrationMenu() {
|
894 |
// Sub Items
|
895 |
// Settings Page
|
896 |
-
add_submenu_page('
|
897 |
// Welcome Page
|
898 |
add_submenu_page('options.php', __('Timeline Express Welcome','timeline-express'), __('Timeline Express Welcome','timeline-express'), 'manage_options', 'timeline-express-welcome', array(&$this, 'generateWelcomePage'));
|
|
|
|
|
899 |
}
|
900 |
|
901 |
|
@@ -909,6 +1073,9 @@ if(!class_exists("timelineExpressBase"))
|
|
909 |
}
|
910 |
public function generateWelcomePage() {
|
911 |
require_once TIMELINE_EXPRESS_PATH . 'pages/welcome.php'; // include our welcome page
|
|
|
|
|
|
|
912 |
}
|
913 |
|
914 |
|
41 |
public function deactivate() {
|
42 |
// clear our re-write rules on deactivate
|
43 |
delete_option('post_type_rules_flased_te-announcements');
|
44 |
+
wp_clear_scheduled_hook( 'timeline_express_support_license_check' );
|
45 |
}
|
46 |
|
47 |
public function uninstall() {
|
63 |
// delete options on plugin uninstall
|
64 |
// after we check the 'delete-announcement-posts-on-uninstallation' setting
|
65 |
delete_option( TIMELINE_EXPRESS_OPTION );
|
66 |
+
delete_option( 'timeline_express_license_status' );
|
67 |
+
delete_option( 'timeline_express_license_key' );
|
68 |
}
|
69 |
|
70 |
/***** INITIAL SETUP
|
135 |
add_action( 'admin_head', array( &$this , 'timeline_express_add_tinymce' ) );
|
136 |
// filter to keep our plugin auto updated :) , we want all users on the most recent version (the best we can) new @v1.0.8
|
137 |
add_filter( 'auto_update_plugin', array( &$this , 'include_timeline_express_in_auto_updates' ), 10, 2 );
|
138 |
+
// register timeline express license setting
|
139 |
+
add_action('admin_init', array( &$this , 'timeline_express_register_settings' ) );
|
140 |
+
// Remote activation function
|
141 |
+
add_action('admin_init', array( &$this , 'timeline_express_activate_license' ) );
|
142 |
+
// Remove deactivation function
|
143 |
+
add_action('admin_init', array( &$this , 'timeline_express_deactivate_license' ) );
|
144 |
+
// Cross check the validity of our supportl icense , twice a day
|
145 |
+
add_action('timeline_express_support_license_check', array( &$this , 'crosscheck_support_license' ) );
|
146 |
}
|
147 |
|
148 |
+
/*
|
149 |
+
* schedule_timeline_express_support_cron()
|
150 |
+
* Setup our twice daily transient, to cross check the API key ( if set )
|
151 |
+
* since @v1.1.4
|
152 |
+
*/
|
153 |
+
public function schedule_timeline_express_support_cron() {
|
154 |
+
wp_schedule_event( current_time( 'timestamp' ), 'twicedaily', 'timeline_express_support_license_check');
|
155 |
+
}
|
156 |
+
|
157 |
+
/*
|
158 |
+
* crosscheck_support_license()
|
159 |
+
* API Request to cross check the license, and update the option based on the result
|
160 |
+
* since @v1.1.4
|
161 |
+
*/
|
162 |
+
public function crosscheck_support_license() {
|
163 |
+
// only run if the user has a valid license installed
|
164 |
+
if ( get_option( 'timeline_express_license_status' ) !== false && get_option( 'timeline_express_license_status' ) == 'valid' ) {
|
165 |
+
// api parameters, cross checking the license
|
166 |
+
$api_params = array(
|
167 |
+
'edd_action'=> 'check_license',
|
168 |
+
'license' => trim( get_option( 'timeline_express_license_key' ) ),
|
169 |
+
'item_name' => urlencode( EH_DEV_SHOP_SUPPORT_PRODUCT_NAME ), // the name of our product
|
170 |
+
'url' => home_url()
|
171 |
+
);
|
172 |
+
// Call the custom API.
|
173 |
+
$response = wp_remote_get( add_query_arg( $api_params, EH_DEV_SHOP_URL ), array( 'timeout' => 15, 'sslverify' => false ) );
|
174 |
+
|
175 |
+
// decode the license data
|
176 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
177 |
+
// check license status
|
178 |
+
if ( $license_data->license != 'valid' ) {
|
179 |
+
update_option( 'timeline_express_license_status', $license_data->license );
|
180 |
+
update_option( 'timeline_express_license_data', $license_data );
|
181 |
+
}
|
182 |
+
}
|
183 |
+
}
|
184 |
+
|
185 |
+
/*
|
186 |
+
* timeline_express_activate_license()
|
187 |
+
* Remote Support License Activation
|
188 |
+
* since @v1.1.4
|
189 |
+
*/
|
190 |
+
public function timeline_express_activate_license() {
|
191 |
+
|
192 |
+
// listen for our activate button to be clicked
|
193 |
+
if( isset( $_POST['timeline_express_license_activate'] ) ) {
|
194 |
+
|
195 |
+
// run a quick security check
|
196 |
+
if( ! check_admin_referer( 'timeline_express_nonce', 'timeline_express_nonce' ) )
|
197 |
+
return; // get out if we didn't click the Activate button
|
198 |
+
|
199 |
+
// retrieve the license from the database
|
200 |
+
$license = trim( get_option( 'timeline_express_license_key' ) );
|
201 |
+
|
202 |
+
// data to send in our API request
|
203 |
+
$api_params = array(
|
204 |
+
'edd_action'=> 'activate_license',
|
205 |
+
'license' => $license,
|
206 |
+
'item_name' => urlencode( EH_DEV_SHOP_SUPPORT_PRODUCT_NAME ), // the name of our product
|
207 |
+
'url' => home_url()
|
208 |
+
);
|
209 |
+
|
210 |
+
// Call the custom API.
|
211 |
+
$response = wp_remote_get( add_query_arg( $api_params, EH_DEV_SHOP_URL ), array( 'timeout' => 15, 'sslverify' => false ) );
|
212 |
+
|
213 |
+
// make sure the response came back okay
|
214 |
+
if ( is_wp_error( $response ) )
|
215 |
+
return false;
|
216 |
+
|
217 |
+
// decode the license data
|
218 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
219 |
+
|
220 |
+
// $license_data->license returns "valid" or "invalid"
|
221 |
+
update_option( 'timeline_express_license_status', $license_data->license );
|
222 |
+
update_option( 'timeline_express_license_data', $license_data );
|
223 |
+
|
224 |
+
}
|
225 |
+
} // end remote activation
|
226 |
+
|
227 |
+
|
228 |
+
/*
|
229 |
+
* timeline_express_deactivate_license()
|
230 |
+
* Remote Support License De-activation
|
231 |
+
* since @v1.1.4
|
232 |
+
*/
|
233 |
+
public function timeline_express_deactivate_license() {
|
234 |
+
|
235 |
+
// listen for our activate button to be clicked
|
236 |
+
if( isset( $_POST['timeline_express_license_deactivate'] ) ) {
|
237 |
+
|
238 |
+
// run a quick security check
|
239 |
+
if( ! check_admin_referer( 'timeline_express_nonce', 'timeline_express_nonce' ) )
|
240 |
+
return; // get out if we didn't click the Activate button
|
241 |
+
|
242 |
+
// retrieve the license from the database
|
243 |
+
$license = trim( get_option( 'timeline_express_license_key' ) );
|
244 |
+
|
245 |
+
|
246 |
+
// data to send in our API request
|
247 |
+
$api_params = array(
|
248 |
+
'edd_action'=> 'deactivate_license',
|
249 |
+
'license' => $license,
|
250 |
+
'item_name' => urlencode( EH_DEV_SHOP_SUPPORT_PRODUCT_NAME ), // the name of our product
|
251 |
+
'url' => home_url()
|
252 |
+
);
|
253 |
+
|
254 |
+
// Call the custom API.
|
255 |
+
$response = wp_remote_get( add_query_arg( $api_params, EH_DEV_SHOP_URL ), array( 'timeout' => 15, 'sslverify' => false ) );
|
256 |
+
|
257 |
+
// make sure the response came back okay
|
258 |
+
if ( is_wp_error( $response ) )
|
259 |
+
return false;
|
260 |
+
|
261 |
+
// decode the license data
|
262 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
263 |
+
|
264 |
+
// $license_data->license returns either "deactivated" or "failed"
|
265 |
+
if( $license_data->license == 'deactivated' )
|
266 |
+
delete_option( 'timeline_express_license_status' );
|
267 |
+
|
268 |
+
}
|
269 |
+
} // end remove deactivation
|
270 |
+
|
271 |
+
|
272 |
+
/*
|
273 |
+
* timeline_express_register_settings()
|
274 |
+
* Register a setting for support license users
|
275 |
+
* since @v1.1.4
|
276 |
+
*/
|
277 |
+
function timeline_express_register_settings() {
|
278 |
+
// creates our settings in the options table
|
279 |
+
register_setting('timeline_express_license', 'timeline_express_license_key', array( &$this , 'timeline_express_sanitize_license' ) );
|
280 |
+
}
|
281 |
+
|
282 |
+
|
283 |
+
/*
|
284 |
+
* timeline_express_sanitize_license()
|
285 |
+
* save license key function
|
286 |
+
* since @v1.1.4
|
287 |
+
*/
|
288 |
+
function timeline_express_sanitize_license( $new ) {
|
289 |
+
$old = get_option( 'timeline_express_license_key' );
|
290 |
+
if( $old && $old != $new ) {
|
291 |
+
delete_option( 'timeline_express_license_status' ); // new license has been entered, so must reactivate
|
292 |
+
}
|
293 |
+
return $new;
|
294 |
+
}
|
295 |
+
|
296 |
+
|
297 |
/*
|
298 |
* include_timeline_express_in_auto_updates();
|
299 |
*
|
326 |
// Register our Announcement Custom Post Type
|
327 |
// used to easily manage the announcements on the site
|
328 |
$timeline_express_labels = array(
|
329 |
+
'name' => __( 'Timeline Express Announcements' , 'timeline-express' ),
|
330 |
+
'singular_name' => __( 'Announcement' , 'timeline-express' ), // menu item at the top New > Announcement
|
331 |
+
'menu_name' => __( 'Timeline Express' , 'timeline-express' ), // menu name
|
332 |
+
'parent_item_colon' => __( 'Timeline Express:' , 'timeline-express' ),
|
333 |
+
'all_items' => __( 'All Announcements' , 'timeline-express' ),
|
334 |
+
'view_item' => __( 'View Announcement' , 'timeline-express' ),
|
335 |
+
'add_new_item' => __( 'New Announcement' , 'timeline-express' ),
|
336 |
+
'add_new' => __( 'New Announcement' , 'timeline-express' ),
|
337 |
+
'edit_item' => __( 'Edit Announcement' , 'timeline-express' ),
|
338 |
+
'update_item' => __( 'Update Announcement' , 'timeline-express' ),
|
339 |
+
'search_items' => __( 'Search Announcements' , 'timeline-express' ),
|
340 |
+
'not_found' => __( 'No Timeline Express Announcements Found' , 'timeline-express' ),
|
341 |
+
'not_found_in_trash' => __( 'No Timeline Express Announcements in Trash' , 'timeline-express' ),
|
342 |
);
|
343 |
$timeline_express_rewrite = array(
|
344 |
+
'slug' => apply_filters( 'timeline-express-slug' , 'announcement' ),
|
345 |
'with_front' => false,
|
346 |
'pages' => true,
|
347 |
'feeds' => true,
|
348 |
);
|
349 |
$timeline_express_args = array(
|
350 |
'label' => 'timeline-express-announcement',
|
351 |
+
'description' => __( 'Post type for adding timeline express announcements to the site' , 'timeline-express' ),
|
352 |
'labels' => $timeline_express_labels,
|
353 |
'supports' => array( 'title', 'editor' ),
|
354 |
'taxonomies' => array(),
|
676 |
$referer = $_SERVER['HTTP_REFERER'];
|
677 |
if ( $announcement_image != '' ) {
|
678 |
$announcement_image_id = $wpdb->get_col($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE guid='%s';", esc_url( $announcement_image) ) );
|
679 |
+
$custom_content = '';
|
680 |
+
if ( $announcement_image_id ) {
|
681 |
+
$announcement_header_image = wp_get_attachment_image_src( $announcement_image_id[0] , 'timeline-express-announcement-header');
|
682 |
+
$custom_content .= '<img class="announcement-banner-image" src="' . esc_url ( $announcement_header_image[0] ) . '" alt="' . get_the_title( $post->ID ) . '">';
|
683 |
+
}
|
684 |
$custom_content .= '<strong class="timeline-express-single-page-announcement-date">Announcement Date : ' . date( 'M j , Y' , $announcement_date ) . '</strong>';
|
685 |
$custom_content .= $content;
|
686 |
if ( $referer != '' ) {
|
742 |
public function addStyles() {
|
743 |
|
744 |
$screen = get_current_screen();
|
745 |
+
$print_styles_on_screen_array = array( 'te_announcements_page_timeline-express-settings' , 'admin_page_timeline-express-welcome' , 'te_announcements_page_timeline-express-support' );
|
746 |
|
747 |
if ( in_array( $screen->base , $print_styles_on_screen_array ) || in_array( $screen->id, array( 'edit-te_announcements' ) ) ) {
|
748 |
// Register Styles
|
757 |
public function addScripts() {
|
758 |
$screen = get_current_screen();
|
759 |
global $post;
|
760 |
+
if ( in_array( $screen->base , array('te_announcements_page_timeline-express-settings') ) || $screen->post_type == 'te_announcements' ) {
|
761 |
// enqueue the admin scripts here
|
762 |
// Add the color picker css file
|
763 |
// used to select colors on the settings page
|
915 |
while( $announcement_query->have_posts() ) {
|
916 |
$announcement_query->the_post();
|
917 |
global $post;
|
918 |
+
$announcement_image = esc_url( get_post_meta( $post->ID , 'announcement_image' , true ) );
|
919 |
$button_classes = 'cd-read-more btn btn-primary ';
|
920 |
?>
|
921 |
<div class="cd-timeline-block">
|
967 |
$read_more_button = '';
|
968 |
} else {
|
969 |
$elipses = __( '...' , 'timeline-express' );
|
|
|
970 |
$read_more_button = '<a href="' . get_the_permalink() . '" class="' . apply_filters( "timeline-express-read-more-class" , $button_classes ) . '">' . __( 'Read more' , 'timeline-express' ) . '</a>';
|
971 |
}
|
972 |
?>
|
1011 |
function te_wp_trim_words_retain_formatting( $text, $num_words = 55, $more = null ) {
|
1012 |
if ( null === $more )
|
1013 |
$more = __( '…' );
|
1014 |
+
$original_text = $text;
|
1015 |
/* translators: If your word count is based on single characters (East Asian characters),
|
1016 |
enter 'characters'. Otherwise, enter 'words'. Do not translate into your own language. */
|
1017 |
if ( 'characters' == _x( 'words', 'word count: words or characters?' ) && preg_match( '/^utf\-?8$/i', get_option( 'blog_charset' ) ) ) {
|
1055 |
public function addAdministrationMenu() {
|
1056 |
// Sub Items
|
1057 |
// Settings Page
|
1058 |
+
add_submenu_page('edit.php?post_type=te_announcements', __('Timeline Express Settings','timeline-express'), __('Settings','timeline-express'), 'manage_options', 'timeline-express-settings', array(&$this, 'generateOptionsPage'));
|
1059 |
// Welcome Page
|
1060 |
add_submenu_page('options.php', __('Timeline Express Welcome','timeline-express'), __('Timeline Express Welcome','timeline-express'), 'manage_options', 'timeline-express-welcome', array(&$this, 'generateWelcomePage'));
|
1061 |
+
// Support Page
|
1062 |
+
add_submenu_page('edit.php?post_type=te_announcements', __('Support','timeline-express'), __('Support','timeline-express'), 'manage_options', 'timeline-express-support', array(&$this, 'generateSupportPage'));
|
1063 |
}
|
1064 |
|
1065 |
|
1073 |
}
|
1074 |
public function generateWelcomePage() {
|
1075 |
require_once TIMELINE_EXPRESS_PATH . 'pages/welcome.php'; // include our welcome page
|
1076 |
+
}
|
1077 |
+
public function generateSupportPage() {
|
1078 |
+
require_once TIMELINE_EXPRESS_PATH . 'pages/support.php'; // include our welcome page
|
1079 |
}
|
1080 |
|
1081 |
|
css/timeline-express-css3-slideshow.css
ADDED
@@ -0,0 +1,143 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#slides {
|
2 |
+
display: none
|
3 |
+
}
|
4 |
+
|
5 |
+
#slides .slidesjs-navigation {
|
6 |
+
margin-top:5px;
|
7 |
+
}
|
8 |
+
|
9 |
+
a.slidesjs-next,
|
10 |
+
a.slidesjs-previous,
|
11 |
+
a.slidesjs-play,
|
12 |
+
a.slidesjs-stop {
|
13 |
+
display: none !important;
|
14 |
+
}
|
15 |
+
|
16 |
+
a.slidesjs-next {
|
17 |
+
margin-right:10px;
|
18 |
+
background-position: -12px 0;
|
19 |
+
}
|
20 |
+
|
21 |
+
a:hover.slidesjs-next {
|
22 |
+
background-position: -12px -18px;
|
23 |
+
}
|
24 |
+
|
25 |
+
a.slidesjs-previous {
|
26 |
+
background-position: 0 0;
|
27 |
+
}
|
28 |
+
|
29 |
+
a:hover.slidesjs-previous {
|
30 |
+
background-position: 0 -18px;
|
31 |
+
}
|
32 |
+
|
33 |
+
a.slidesjs-play {
|
34 |
+
width:15px;
|
35 |
+
background-position: -25px 0;
|
36 |
+
}
|
37 |
+
|
38 |
+
a:hover.slidesjs-play {
|
39 |
+
background-position: -25px -18px;
|
40 |
+
}
|
41 |
+
|
42 |
+
a.slidesjs-stop {
|
43 |
+
width:18px;
|
44 |
+
background-position: -41px 0;
|
45 |
+
}
|
46 |
+
|
47 |
+
a:hover.slidesjs-stop {
|
48 |
+
background-position: -41px -18px;
|
49 |
+
}
|
50 |
+
|
51 |
+
.slidesjs-pagination {
|
52 |
+
margin: 7px 0 0;
|
53 |
+
float: right;
|
54 |
+
list-style: none;
|
55 |
+
}
|
56 |
+
|
57 |
+
.slidesjs-pagination li {
|
58 |
+
float: left;
|
59 |
+
margin: 0 1px;
|
60 |
+
}
|
61 |
+
|
62 |
+
.slidesjs-pagination li a {
|
63 |
+
display: block;
|
64 |
+
width: 13px;
|
65 |
+
height: 0;
|
66 |
+
padding-top: 13px;
|
67 |
+
background-image: url(../images/support/pagination.png);
|
68 |
+
background-position: 0 0;
|
69 |
+
float: left;
|
70 |
+
overflow: hidden;
|
71 |
+
}
|
72 |
+
|
73 |
+
.slidesjs-pagination li a.active,
|
74 |
+
.slidesjs-pagination li a:hover.active {
|
75 |
+
background-position: 0 -13px
|
76 |
+
}
|
77 |
+
|
78 |
+
.slidesjs-pagination li a:hover {
|
79 |
+
background-position: 0 -26px
|
80 |
+
}
|
81 |
+
|
82 |
+
#slides a:link,
|
83 |
+
#slides a:visited {
|
84 |
+
color: #333
|
85 |
+
}
|
86 |
+
|
87 |
+
#slides a:hover,
|
88 |
+
#slides a:active {
|
89 |
+
color: #9e2020
|
90 |
+
}
|
91 |
+
|
92 |
+
.navbar {
|
93 |
+
overflow: hidden
|
94 |
+
}
|
95 |
+
#slides {
|
96 |
+
display: none
|
97 |
+
}
|
98 |
+
|
99 |
+
.te-slider-container {
|
100 |
+
margin: 0 auto
|
101 |
+
}
|
102 |
+
|
103 |
+
/* For tablets & smart phones */
|
104 |
+
@media (max-width: 767px) {
|
105 |
+
.te-slider-container {
|
106 |
+
width: auto;
|
107 |
+
left: 0;
|
108 |
+
}
|
109 |
+
}
|
110 |
+
|
111 |
+
/* For smartphones */
|
112 |
+
@media (max-width: 480px) {
|
113 |
+
.te-slider-container {
|
114 |
+
width: auto;
|
115 |
+
}
|
116 |
+
}
|
117 |
+
|
118 |
+
/* For smaller displays like laptops */
|
119 |
+
@media (min-width: 768px) and (max-width: 979px) {
|
120 |
+
.te-slider-container {
|
121 |
+
width: 724px;
|
122 |
+
}
|
123 |
+
}
|
124 |
+
|
125 |
+
/* For larger displays */
|
126 |
+
@media (min-width: 1200px) {
|
127 |
+
.te-slider-container {
|
128 |
+
position: absolute;
|
129 |
+
right: 0;
|
130 |
+
top: 0;
|
131 |
+
margin: 1.3em 2em 0 0;
|
132 |
+
width: 650px;
|
133 |
+
height: 165px;
|
134 |
+
}
|
135 |
+
}
|
136 |
+
|
137 |
+
|
138 |
+
|
139 |
+
|
140 |
+
|
141 |
+
|
142 |
+
|
143 |
+
|
css/timeline-express-settings.css
CHANGED
@@ -80,14 +80,13 @@
|
|
80 |
|
81 |
/* Icon */
|
82 |
#timeline-express-icon {
|
83 |
-
background: transparent url('../images/timeline-express-
|
84 |
display:block;
|
85 |
float:left;
|
86 |
padding: 0 0 0 .5em;
|
87 |
-
height:
|
88 |
-
width:
|
89 |
background-size: contain;
|
90 |
-
margin-bottom: .5em;
|
91 |
}
|
92 |
|
93 |
/* Settings Page Header */
|
@@ -266,10 +265,6 @@
|
|
266 |
|
267 |
/** Admin Break Points **/
|
268 |
|
269 |
-
@media only screen and (max-width: 1175px) {
|
270 |
-
|
271 |
-
}
|
272 |
-
|
273 |
.dashicons-star-filled {color:#FEBE12;}
|
274 |
|
275 |
#timeline_express_reset_plugin_settings .dashicons-dismiss {
|
@@ -513,4 +508,124 @@ body.admin_page_timeline-express-welcome .slides ul li h2.promo-text {
|
|
513 |
-webkit-text-fill-color: transparent;
|
514 |
}
|
515 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
516 |
/** End Timeline Express Admin Styles */
|
80 |
|
81 |
/* Icon */
|
82 |
#timeline-express-icon {
|
83 |
+
background: transparent url('../images/timeline-express-logo-128.png') no-repeat 0 0;
|
84 |
display:block;
|
85 |
float:left;
|
86 |
padding: 0 0 0 .5em;
|
87 |
+
height: 128px;
|
88 |
+
width: 128px;
|
89 |
background-size: contain;
|
|
|
90 |
}
|
91 |
|
92 |
/* Settings Page Header */
|
265 |
|
266 |
/** Admin Break Points **/
|
267 |
|
|
|
|
|
|
|
|
|
268 |
.dashicons-star-filled {color:#FEBE12;}
|
269 |
|
270 |
#timeline_express_reset_plugin_settings .dashicons-dismiss {
|
508 |
-webkit-text-fill-color: transparent;
|
509 |
}
|
510 |
|
511 |
+
|
512 |
+
/* Version 1.1.4 , support page styles */
|
513 |
+
#timeline-express-support-page-wrap {
|
514 |
+
padding: 2em;
|
515 |
+
}
|
516 |
+
|
517 |
+
.te_announcements_page_timeline-express-settings .wrap {
|
518 |
+
padding: 0 2em;
|
519 |
+
}
|
520 |
+
|
521 |
+
#timeline-express-support-page-wrap hr {
|
522 |
+
margin: 1.5em 0;
|
523 |
+
}
|
524 |
+
|
525 |
+
#timeline-express-support-page-header {
|
526 |
+
display: inline-block;
|
527 |
+
width: 100%;
|
528 |
+
}
|
529 |
+
|
530 |
+
#timeline-express-support-page-header img.te-logo {
|
531 |
+
max-width: 128px;
|
532 |
+
min-width: 90px;
|
533 |
+
width: 20%;
|
534 |
+
float: left;
|
535 |
+
}
|
536 |
+
|
537 |
+
#timeline-express-support-page-header .support-subhead {
|
538 |
+
display: block;
|
539 |
+
margin: 2em 0 0 1em;
|
540 |
+
float: left;
|
541 |
+
width: 44%;
|
542 |
+
}
|
543 |
+
|
544 |
+
#timeline-express-support-page-wrap #timeline_express_license_key {
|
545 |
+
width: 25%;
|
546 |
+
min-width: 400px;
|
547 |
+
}
|
548 |
+
|
549 |
+
/* Valid license Check mark */
|
550 |
+
.timeline-express-valid-license {
|
551 |
+
color: rgba(144, 214, 125, 0.68);
|
552 |
+
font-size: 28px;
|
553 |
+
}
|
554 |
+
|
555 |
+
/* Purchase support license button */
|
556 |
+
.purchase-support-license {
|
557 |
+
margin-left: -.5em !important;
|
558 |
+
}
|
559 |
+
|
560 |
+
/* Timeline Express Support License Forms Page */
|
561 |
+
.timeline-express-license-buttons {
|
562 |
+
display: block;
|
563 |
+
width: 100%;
|
564 |
+
margin-top: 2em;
|
565 |
+
}
|
566 |
+
|
567 |
+
/* Invalid License Error */
|
568 |
+
.timeline-express-invalid-license-error {
|
569 |
+
color: rgba(225, 47, 47, 0.73);
|
570 |
+
}
|
571 |
+
|
572 |
+
/* Premium Support Contact Form */
|
573 |
+
#premium-support-contact-form {
|
574 |
+
float: left;
|
575 |
+
width: 33%;
|
576 |
+
min-width: 300px;
|
577 |
+
}
|
578 |
+
#premium-support-contact-form form {
|
579 |
+
width: 100%;
|
580 |
+
}
|
581 |
+
#premium-support-contact-form form input, #premium-support-contact-form form textarea, #premium-support-contact-form form label {
|
582 |
+
width: 100%;
|
583 |
+
}
|
584 |
+
#premium-support-contact-form form textarea {
|
585 |
+
resize: vertical;
|
586 |
+
}
|
587 |
+
#premium-support-contact-form form input[type="submit"], #premium-support-contact-form form label {
|
588 |
+
margin-top: 1em;
|
589 |
+
display: block;
|
590 |
+
}
|
591 |
+
|
592 |
+
/* License Expiring Soon Message */
|
593 |
+
.license-expiring-soon {
|
594 |
+
font-size: 11px;
|
595 |
+
color: rgb(243, 75, 75);
|
596 |
+
display: block;
|
597 |
+
}
|
598 |
+
|
599 |
+
|
600 |
+
/* Break Points */
|
601 |
+
@media only screen and (max-width: 1081px) {
|
602 |
+
#timeline_express_license_key {
|
603 |
+
min-width: 90% !important;
|
604 |
+
width: 90% !important;
|
605 |
+
}
|
606 |
+
#premium-support-contact-form form input, #premium-support-contact-form form textarea, #premium-support-contact-form form label {
|
607 |
+
width: 100%;
|
608 |
+
}
|
609 |
+
#premium-support-contact-form {
|
610 |
+
margin: 2em 0 0 0;
|
611 |
+
float: left;
|
612 |
+
width: 100%;
|
613 |
+
}
|
614 |
+
#timeline-express-support-page-wrap table.widefat.fixed {
|
615 |
+
max-width: 100% !important;
|
616 |
+
}
|
617 |
+
#timeline-express-support-page-header .support-subhead {
|
618 |
+
width: auto;
|
619 |
+
}
|
620 |
+
#timeline-express-support-page-header .te-logo {
|
621 |
+
min-width: 140px !important;
|
622 |
+
float: none !important;
|
623 |
+
display: block;
|
624 |
+
margin: 0 auto;
|
625 |
+
}
|
626 |
+
#timeline-express-support-page-header .support-subhead h1 {
|
627 |
+
line-height: 1.2;
|
628 |
+
}
|
629 |
+
}
|
630 |
+
|
631 |
/** End Timeline Express Admin Styles */
|
css/timeline-express-settings.min.css
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
/* Timeline Express by Evan Herman */
|
2 |
/* Settings Stylesheet Minified */
|
3 |
-
.wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:-webkit-gradient(linear,left top,left bottom,from(#C5292E),to(#9B2124));background-image:-webkit-linear-gradient(top,#C5292E,#9B2124);background-image:-moz-linear-gradient(top,#C5292E,#9B2124);background-image:-ms-linear-gradient(top,#C5292E,#9B2124);background-image:-o-linear-gradient(top,#C5292E,#9B2124);background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.5);box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1);margin-left:2em;width:150px;text-align:center}.wp-core-ui .timeline-express-red-button.focus,.wp-core-ui .timeline-express-red-button.hover,.wp-core-ui .timeline-express-red-button:focus,.wp-core-ui .timeline-express-red-button:hover{background-color:#B72629;background-image:-webkit-gradient(linear,left top,left bottom,from(#D22E30),to(#9B2124));background-image:-webkit-linear-gradient(top,#D22E30,#9B2124);background-image:-moz-linear-gradient(top,#D22E30,#9B2124);background-image:-ms-linear-gradient(top,#D22E30,#9B2124);background-image:-o-linear-gradient(top,#D22E30,#9B2124);background-image:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6);box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .timeline-express-red-button.focus,.wp-core-ui .timeline-express-red-button:focus{border-color:#500F0E;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4);box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .timeline-express-red-button.active,.wp-core-ui .timeline-express-red-button.active:focus,.wp-core-ui .timeline-express-red-button.active:hover,.wp-core-ui .timeline-express-red-button:active{background:#7F1C1F;background-image:-webkit-gradient(linear,left top,left bottom,from(#9B2124),to(#B72629));background-image:-webkit-linear-gradient(top,#9B2124,#B72629);background-image:-moz-linear-gradient(top,#9B2124,#B72629);background-image:-ms-linear-gradient(top,#9B2124,#B72629);background-image:-o-linear-gradient(top,#9B2124,#B72629);background-image:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.1);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .timeline-express-red-button-disabled,.wp-core-ui .timeline-express-red-button:disabled,.wp-core-ui .timeline-express-red-button[disabled]{color:#E79496!important;background:#BA292B!important;border-color:#7F1C1F!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}#timeline-express-icon{background:url(../images/timeline-express-icon.png) no-repeat;display:block;float:left;padding:0 0 0 .5em;height:75px;width:75px;background-size:contain;margin-bottom:.5em}.wrap #timeline-express-page-header{padding-top:0;margin:1em 0 0;font-size:25px;line-height:3}.wrap .nav-tab-wrapper{padding-top:2.5em}.wrap .account-nav-tab{padding-top:0}.random-length-text{opacity:.5}#timeline_express_review_this_plugin_container .fa-paypal{display:block;width:100%;font-size:16px;padding-top:4px;margin:0 auto!important;color:#253b80}.wrap #timeline_express_review_this_plugin_container{padding:.5em;float:right;margin-top:.75em}#timeline_express_review_this_plugin_container{display:inline-block}#timeline_express_review_this_plugin_container a,#timeline_express_review_this_plugin_container a:hover{color:#333}#timeline_express_review_this_plugin_container .timeline_express_header_logo,#timeline_express_review_this_plugin_container div,#timeline_express_review_this_plugin_container span{float:left;margin:0 .5em;text-align:center}#timeline_express_review_this_plugin_container div.dashicons{margin:0 5px}#timeline_express_review_this_plugin_container div.dashicons-plus-alt{display:block;width:100%;margin:0 auto;color:#a3c3b8}.timeline-express-form{margin-bottom:3em}.timeline-express-form th{font-weight:700}.timeline-express-settings-description{padding-bottom:2em!important;color:#A7A7A7;font-style:italic;font-size:10px}.wp-admin .active-parent-button,.wp-admin .active-parent-button:hover{color:red}.delete-no:after{content:" no, save my announcements from being deleted. I'll need them again!"}.delete-no:hover{cursor:pointer}.delete-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.delete-yes:hover{cursor:pointer}.wp-picker-holder{position:absolute;z-index:99999999}#no-events-message_ifr{max-height:100px}.wp-list-table .no-items .colspanchange{text-align:center;height:115px;line-height:8;font-style:italic}.wp-list-table #color,.wp-list-table #icon{width:65px;text-align:center;padding-left:1em}.wp-list-table #announcement_date{width:215px}.wp-list-table #image,.wp-list-table .column-image{width:250px;text-align:center}.no-image-used-text{line-height:4.7}.wp-list-table #past_announcement,.wp-list-table .past_announcement{width:150px;text-align:center}.wp-list-table .announcement_color_box{display:block;width:15px;height:15px;border:1px solid rgba(128,128,128,.22);padding:.5em;text-align:center;margin:11px auto 0;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.wp-list-table .edit-announcement-icon{font-size:25px!important;line-height:2.5!important;display:block;text-align:center}.wp-list-table #announcement_date{line-height:1.5;padding-left:2.5em}.wp-list-table .announcement_date{line-height:4.5!important;text-align:center}.wp-list-table .dashicon-past-announcement{font-size:30px!important;line-height:2.1!important}.dashicons-star-filled{color:#FEBE12}#timeline_express_reset_plugin_settings .dashicons-dismiss{float:left;margin-top:.5em;padding:.5em 1em 1em .5em;color:#f15353}body.admin_page_timeline-express-welcome .timeline-express-image{background:url('../images/welcome/background.png')}body.admin_page_timeline-express-welcome .timeline-screenshot{padding:1.5em 1.5em 0}body.admin_page_timeline-express-welcome .font-awesome-background{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/Font-Awesome-Cheatsheet.png');background-size:cover;height:250px;text-align:center;line-height:8}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/intuitive-creation-screen.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/Manage-Announcements.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;margin-top:1.5em;background-image:url('../images/welcome/customize-your-timeline.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .slides{height:665px;overflow:hidden;position:relative;width:100%;padding:4% 0}body.admin_page_timeline-express-welcome .slides ul{list-style:none;position:relative}@-webkit-keyframes anim_slides{0%{opacity:0}24%,6%{opacity:1}100%,30%{opacity:0}}@-moz-keyframes anim_slides{0%{opacity:0}24%,6%{opacity:1}100%,30%{opacity:0}}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;position:absolute;top:0;-webkit-animation-name:anim_slides;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-delay:0;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-name:anim_slides;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-delay:0;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}body.admin_page_timeline-express-welcome .slides ul li:nth-child(2),body.admin_page_timeline-express-welcome .slides ul li:nth-child(2) h2.promo-text{-webkit-animation-delay:6s;-moz-animation-delay:6s}body.admin_page_timeline-express-welcome .slides ul li:nth-child(3),body.admin_page_timeline-express-welcome .slides ul li:nth-child(3) h2.promo-text{-webkit-animation-delay:12s;-moz-animation-delay:12s}body.admin_page_timeline-express-welcome .slides ul li img{display:block}@-webkit-keyframes anim_titles{0%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}100%,25%{left:5%;opacity:0}}@-moz-keyframes anim_titles{0%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}100%,25%{left:5%;opacity:0}}body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{background-color:#000;border-radius:10px;box-shadow:0 0 3px #FFF inset;color:#FFF;font-size:18px;margin:0 auto;padding:10px;position:absolute;top:-35px;width:350px;text-align:center;-webkit-animation-name:anim_titles;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-delay:0;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-name:anim_titles;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-delay:0;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}.dashicons-heart{background:-webkit-linear-gradient(top,#ff8cf7,#e2a5e0);background:linear-gradient(top,#ff8cf7,#e2a5e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
|
1 |
+
/* Timeline Express by Evan Herman v1.1.4 */
|
2 |
/* Settings Stylesheet Minified */
|
3 |
+
.wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:-webkit-gradient(linear,left top,left bottom,from(#C5292E),to(#9B2124));background-image:-webkit-linear-gradient(top,#C5292E,#9B2124);background-image:-moz-linear-gradient(top,#C5292E,#9B2124);background-image:-ms-linear-gradient(top,#C5292E,#9B2124);background-image:-o-linear-gradient(top,#C5292E,#9B2124);background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.5);box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1);margin-left:2em;width:150px;text-align:center}.wp-core-ui .timeline-express-red-button.focus,.wp-core-ui .timeline-express-red-button.hover,.wp-core-ui .timeline-express-red-button:focus,.wp-core-ui .timeline-express-red-button:hover{background-color:#B72629;background-image:-webkit-gradient(linear,left top,left bottom,from(#D22E30),to(#9B2124));background-image:-webkit-linear-gradient(top,#D22E30,#9B2124);background-image:-moz-linear-gradient(top,#D22E30,#9B2124);background-image:-ms-linear-gradient(top,#D22E30,#9B2124);background-image:-o-linear-gradient(top,#D22E30,#9B2124);background-image:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6);box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .timeline-express-red-button.focus,.wp-core-ui .timeline-express-red-button:focus{border-color:#500F0E;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4);box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .timeline-express-red-button.active,.wp-core-ui .timeline-express-red-button.active:focus,.wp-core-ui .timeline-express-red-button.active:hover,.wp-core-ui .timeline-express-red-button:active{background:#7F1C1F;background-image:-webkit-gradient(linear,left top,left bottom,from(#9B2124),to(#B72629));background-image:-webkit-linear-gradient(top,#9B2124,#B72629);background-image:-moz-linear-gradient(top,#9B2124,#B72629);background-image:-ms-linear-gradient(top,#9B2124,#B72629);background-image:-o-linear-gradient(top,#9B2124,#B72629);background-image:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.1);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .timeline-express-red-button-disabled,.wp-core-ui .timeline-express-red-button:disabled,.wp-core-ui .timeline-express-red-button[disabled]{color:#E79496!important;background:#BA292B!important;border-color:#7F1C1F!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}#timeline-express-icon{background:url(../images/timeline-express-logo-128.png) 0 0/contain no-repeat;display:block;float:left;padding:0 0 0 .5em;height:128px;width:128px}.wrap #timeline-express-page-header{padding-top:0;margin:1em 0 0;font-size:25px;line-height:3}.wrap .nav-tab-wrapper{padding-top:2.5em}.wrap .account-nav-tab{padding-top:0}.random-length-text{opacity:.5}#timeline_express_review_this_plugin_container .fa-paypal{display:block;width:100%;font-size:16px;padding-top:4px;margin:0 auto!important;color:#253b80}.wrap #timeline_express_review_this_plugin_container{padding:.5em;float:right;margin-top:.75em}#timeline_express_review_this_plugin_container{display:inline-block}#timeline_express_review_this_plugin_container a,#timeline_express_review_this_plugin_container a:hover{color:#333}#timeline_express_review_this_plugin_container .timeline_express_header_logo,#timeline_express_review_this_plugin_container div,#timeline_express_review_this_plugin_container span{float:left;margin:0 .5em;text-align:center}#timeline_express_review_this_plugin_container div.dashicons{margin:0 5px}#timeline_express_review_this_plugin_container div.dashicons-plus-alt{display:block;width:100%;margin:0 auto;color:#a3c3b8}.timeline-express-form{margin-bottom:3em}.timeline-express-form th{font-weight:700}.timeline-express-settings-description{padding-bottom:2em!important;color:#A7A7A7;font-style:italic;font-size:10px}.wp-admin .active-parent-button,.wp-admin .active-parent-button:hover{color:red}.delete-no:after{content:" no, save my announcements from being deleted. I'll need them again!"}.delete-no:hover{cursor:pointer}.delete-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.delete-yes:hover{cursor:pointer}.wp-picker-holder{position:absolute;z-index:99999999}#no-events-message_ifr{max-height:100px}.wp-list-table .no-items .colspanchange{text-align:center;height:115px;line-height:8;font-style:italic}.wp-list-table #color,.wp-list-table #icon{width:65px;text-align:center;padding-left:1em}.wp-list-table #announcement_date{width:215px}.wp-list-table #image,.wp-list-table .column-image{width:250px;text-align:center}.no-image-used-text{line-height:4.7}.wp-list-table #past_announcement,.wp-list-table .past_announcement{width:150px;text-align:center}.wp-list-table .announcement_color_box{display:block;width:15px;height:15px;border:1px solid rgba(128,128,128,.22);padding:.5em;text-align:center;margin:11px auto 0;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.wp-list-table .edit-announcement-icon{font-size:25px!important;line-height:2.5!important;display:block;text-align:center}.wp-list-table #announcement_date{line-height:1.5;padding-left:2.5em}.wp-list-table .announcement_date{line-height:4.5!important;text-align:center}.wp-list-table .dashicon-past-announcement{font-size:30px!important;line-height:2.1!important}.dashicons-star-filled{color:#FEBE12}#timeline_express_reset_plugin_settings .dashicons-dismiss{float:left;margin-top:.5em;padding:.5em 1em 1em .5em;color:#f15353}body.admin_page_timeline-express-welcome .timeline-express-image{background:url('../images/welcome/background.png')}body.admin_page_timeline-express-welcome .timeline-screenshot{padding:1.5em 1.5em 0}body.admin_page_timeline-express-welcome .font-awesome-background{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/Font-Awesome-Cheatsheet.png');background-size:cover;height:250px;text-align:center;line-height:8}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/intuitive-creation-screen.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;margin-top:1.5em;background-image:url('../images/welcome/Manage-Announcements.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;margin-top:1.5em;background-image:url('../images/welcome/customize-your-timeline.jpg');background-size:contain;height:665px;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .slides{height:665px;overflow:hidden;position:relative;width:100%;padding:4% 0}body.admin_page_timeline-express-welcome .slides ul{list-style:none;position:relative}@-webkit-keyframes anim_slides{0%{opacity:0}24%,6%{opacity:1}100%,30%{opacity:0}}@-moz-keyframes anim_slides{0%{opacity:0}24%,6%{opacity:1}100%,30%{opacity:0}}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;position:absolute;top:0;-webkit-animation-name:anim_slides;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-delay:0;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-name:anim_slides;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-delay:0;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}body.admin_page_timeline-express-welcome .slides ul li:nth-child(2),body.admin_page_timeline-express-welcome .slides ul li:nth-child(2) h2.promo-text{-webkit-animation-delay:6s;-moz-animation-delay:6s}body.admin_page_timeline-express-welcome .slides ul li:nth-child(3),body.admin_page_timeline-express-welcome .slides ul li:nth-child(3) h2.promo-text{-webkit-animation-delay:12s;-moz-animation-delay:12s}body.admin_page_timeline-express-welcome .slides ul li img{display:block}@-webkit-keyframes anim_titles{0%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}100%,25%{left:5%;opacity:0}}@-moz-keyframes anim_titles{0%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}100%,25%{left:5%;opacity:0}}body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{background-color:#000;border-radius:10px;box-shadow:0 0 3px #FFF inset;color:#FFF;font-size:18px;margin:0 auto;padding:10px;position:absolute;top:-35px;width:350px;text-align:center;-webkit-animation-name:anim_titles;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-delay:0;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-name:anim_titles;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-delay:0;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}.dashicons-heart{background:-webkit-linear-gradient(top,#ff8cf7,#e2a5e0);background:linear-gradient(top,#ff8cf7,#e2a5e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}#timeline-express-support-page-wrap{padding:2em}.te_announcements_page_timeline-express-settings .wrap{padding:0 2em}#timeline-express-support-page-wrap hr{margin:1.5em 0}#timeline-express-support-page-header{display:inline-block;width:100%}#timeline-express-support-page-header img.te-logo{max-width:128px;min-width:90px;width:20%;float:left}#timeline-express-support-page-header .support-subhead{display:block;margin:2em 0 0 1em;float:left;width:44%}#timeline-express-support-page-wrap #timeline_express_license_key{width:25%;min-width:400px}.timeline-express-valid-license{color:rgba(144,214,125,.68);font-size:28px}.purchase-support-license{margin-left:-.5em!important}.timeline-express-license-buttons{display:block;width:100%;margin-top:2em}.timeline-express-invalid-license-error{color:rgba(225,47,47,.73)}#premium-support-contact-form{float:left;width:33%;min-width:300px}#premium-support-contact-form form,#premium-support-contact-form form input,#premium-support-contact-form form label,#premium-support-contact-form form textarea{width:100%}#premium-support-contact-form form textarea{resize:vertical}#premium-support-contact-form form input[type=submit],#premium-support-contact-form form label{margin-top:1em;display:block}.license-expiring-soon{font-size:11px;color:#f34b4b;display:block}@media only screen and (max-width:1081px){#timeline_express_license_key{min-width:90%!important;width:90%!important}#premium-support-contact-form form input,#premium-support-contact-form form label,#premium-support-contact-form form textarea{width:100%}#premium-support-contact-form{margin:2em 0 0;float:left;width:100%}#timeline-express-support-page-wrap table.widefat.fixed{max-width:100%!important}#timeline-express-support-page-header .support-subhead{width:auto}#timeline-express-support-page-header .te-logo{min-width:140px!important;float:none!important;display:block;margin:0 auto}#timeline-express-support-page-header .support-subhead h1{line-height:1.2}}
|
css/timeline-express.css
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
/* Timeline Express Minified Styles 1.
|
2 |
/* By Evan Herman (http://www.evan-herman.com */
|
3 |
/* -------------------------------------------------- */
|
4 |
.cd-container {
|
1 |
+
/* Timeline Express Minified Styles 1.1.4 */
|
2 |
/* By Evan Herman (http://www.evan-herman.com */
|
3 |
/* -------------------------------------------------- */
|
4 |
.cd-container {
|
css/timeline-express.min.css
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
/* Timeline Express Minified Styles 1.
|
2 |
/* By Evan Herman (http://www.evan-herman.com */
|
3 |
/* -------------------------------------------------- */
|
4 |
.cd-container{width:100%;max-width:822px;margin:0 auto}.cd-container::after{content:'';display:table;clear:both}.cd-timeline-announcement-image{box-shadow:none!important;max-width:100%;display:block;margin:1em auto}#cd-timeline{position:relative;padding:2em 0;margin-top:2em;margin-bottom:3em}#cd-timeline::before{content:'';position:absolute;top:0;left:18px;height:100%;width:4px;background:#d7e4ed}.announcement-banner-image{max-width:100%}.timeline-express-single-page-announcement-date{display:block;margin-bottom:1em}@media only screen and (min-width:822px){#cd-timeline{margin-top:3em;margin-bottom:5.5em}#cd-timeline::before{left:50%;margin-left:-2px}}.cd-timeline-block{margin:25px 0}.cd-timeline-block:after{content:"";display:table;clear:both}.cd-timeline-block:first-child{margin-top:0}.cd-timeline-block:last-child{margin-bottom:0}@media only screen and (min-width:822px){.cd-timeline-block{width:100%;margin:-3.5em 0}.cd-timeline-block:first-child{margin-top:0}.cd-timeline-block:last-child{margin-bottom:0}}.cd-timeline-img{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;box-shadow:0 0 0 4px white,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05)}.cd-timeline-img img{display:block;width:24px;height:24px;position:relative;left:50%;top:50%;margin-left:-12px;margin-top:-12px}.cd-timeline-img.cd-picture{background:#75ce66}.cd-timeline-img.cd-movie{background:#c03b44}.cd-timeline-img.cd-location{background:#f0ca45}@media only screen and (min-width:822px){.cd-timeline-img{width:60px;height:60px;left:50%;margin-left:-30px;-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}.cssanimations .cd-timeline-img.is-hidden{visibility:hidden}.cssanimations .cd-timeline-img.bounce-in{visibility:visible;-webkit-animation:cd-bounce-1 .6s;-moz-animation:cd-bounce-1 .6s;animation:cd-bounce-1 .6s}}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(0.5)}60%{opacity:1;-webkit-transform:scale(1.2)}100%{-webkit-transform:scale(1)}}@-moz-keyframes cd-bounce-1{0%{opacity:0;-moz-transform:scale(0.5)}60%{opacity:1;-moz-transform:scale(1.2)}100%{-moz-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(0.5);-moz-transform:scale(0.5);-ms-transform:scale(0.5);-o-transform:scale(0.5);transform:scale(0.5)}60%{opacity:1;-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}}.cd-timeline-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;box-shadow:0 3px 0 #B9C5CD}.cd-timeline-content:after{content:"";display:table;clear:both}.cd-timeline-content .cd-date,.cd-timeline-content .cd-read-more{display:inline-block}.cd-timeline-content .cd-read-more{padding:.8em 1em;position:relative;z-index:9999}.cd-timeline-content .cd-date{float:left;padding:.8em 0;opacity:.7;font-size:12px}.cd-timeline-title-container{display:inline-block;width:100%;float:left;margin:.55em 0}.cd-timeline-title-container h2{float:left}.cd-timeline-content .timeline-date{opacity:.7;font-size:.857143rem;float:right;margin-top:.5em}.cd-timeline-content::before{content:'';position:absolute;top:16px;right:100%;height:0;width:0;border:7px solid transparent;border-right:7px solid #fff}@media only screen and (min-width:768px){.cd-timeline-content h2{margin-top:0;margin-bottom:0}.cd-timeline-content .the-excerpt{display:block;float:left;width:100%;margin:1em 0;position:relative;z-index:999}.cd-timeline-content .cd-date,.cd-timeline-content .cd-read-more{font-size:14px;font-size:.875rem;position:relative;z-index:999}}@media only screen and (min-width:822px){.cd-timeline-content{margin-left:0;padding:1.6em;width:39%;background:#EFEFEF}.cd-timeline-content::before{top:24px;left:100%;border-color:transparent transparent transparent #EFEFEF}.cd-timeline-content .cd-read-more{float:left;color:#333}.cd-timeline-content .cd-date{position:absolute;width:100%;left:125%;top:15px}.cd-timeline-block:nth-child(even) .cd-timeline-content{float:right}.cd-timeline-block:nth-child(even) .cd-timeline-content::before{top:24px;left:auto;right:100%;border-color:transparent #EFEFEF transparent transparent}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more{float:right;color:#333;padding-right:0}.cd-timeline-block:nth-child(odd) .cd-timeline-content .cd-read-more{position:relative;z-index:99999;padding-left:0}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date{left:auto;right:125%;text-align:right}.cssanimations .cd-timeline-content.is-hidden{visibility:hidden}.cssanimations .cd-timeline-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2 .6s;-moz-animation:cd-bounce-2 .6s;animation:cd-bounce-2 .6s}}@media only screen and (min-width:822px){.cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in{-webkit-animation:cd-bounce-2-inverse .6s;-moz-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2{0%{opacity:0;-moz-transform:translateX(-100px)}60%{opacity:1;-moz-transform:translateX(20px)}100%{-moz-transform:translateX(0)}}@keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px);-moz-transform:translateX(-100px);-ms-transform:translateX(-100px);-o-transform:translateX(-100px);transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px);-moz-transform:translateX(20px);-ms-transform:translateX(20px);-o-transform:translateX(20px);transform:translateX(20px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2-inverse{0%{opacity:0;-moz-transform:translateX(100px)}60%{opacity:1;-moz-transform:translateX(-20px)}100%{-moz-transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px);-moz-transform:translateX(100px);-ms-transform:translateX(100px);-o-transform:translateX(100px);transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px);-moz-transform:translateX(-20px);-ms-transform:translateX(-20px);-o-transform:translateX(-20px);transform:translateX(-20px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}.more-to-come-container{position:relative;background:#EFEFEF;display:block;width:100%;text-align:center}.more-to-come{margin:10em 0 0;padding:1em 0;font-weight:200;color:rgba(100,100,100,.46)}.page article.page{background:0 0!important;box-shadow:none;border:none;-webkit-box-shadow:none}#cd-timeline span.fa{color:#fff;font-size:28px;display:block;text-align:center;margin-top:17px}.cd-timeline-icon-link{color:#fff!important}@media only screen and (max-width:821px){#cd-timeline span.fa{color:#fff;font-size:18px;display:block;text-align:center;margin-top:12px}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more,.cd-timeline-block:nth-child(odd) .cd-timeline-content .cd-read-more{padding-left:0!important;position:relative;z-index:99999}}.timeline-width100{width:100%}.timeline-width34{width:34%}.timeline-width30{width:30%}.timeline-date-left{width:100%;float:left!important}.single-post .announcement-banner-image,.single-post .return-to-timeline,.single-post .timeline-express-single-page-announcement-date{display:none}
|
1 |
+
/* Timeline Express Minified Styles 1.1.4 */
|
2 |
/* By Evan Herman (http://www.evan-herman.com */
|
3 |
/* -------------------------------------------------- */
|
4 |
.cd-container{width:100%;max-width:822px;margin:0 auto}.cd-container::after{content:'';display:table;clear:both}.cd-timeline-announcement-image{box-shadow:none!important;max-width:100%;display:block;margin:1em auto}#cd-timeline{position:relative;padding:2em 0;margin-top:2em;margin-bottom:3em}#cd-timeline::before{content:'';position:absolute;top:0;left:18px;height:100%;width:4px;background:#d7e4ed}.announcement-banner-image{max-width:100%}.timeline-express-single-page-announcement-date{display:block;margin-bottom:1em}@media only screen and (min-width:822px){#cd-timeline{margin-top:3em;margin-bottom:5.5em}#cd-timeline::before{left:50%;margin-left:-2px}}.cd-timeline-block{margin:25px 0}.cd-timeline-block:after{content:"";display:table;clear:both}.cd-timeline-block:first-child{margin-top:0}.cd-timeline-block:last-child{margin-bottom:0}@media only screen and (min-width:822px){.cd-timeline-block{width:100%;margin:-3.5em 0}.cd-timeline-block:first-child{margin-top:0}.cd-timeline-block:last-child{margin-bottom:0}}.cd-timeline-img{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;box-shadow:0 0 0 4px white,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05)}.cd-timeline-img img{display:block;width:24px;height:24px;position:relative;left:50%;top:50%;margin-left:-12px;margin-top:-12px}.cd-timeline-img.cd-picture{background:#75ce66}.cd-timeline-img.cd-movie{background:#c03b44}.cd-timeline-img.cd-location{background:#f0ca45}@media only screen and (min-width:822px){.cd-timeline-img{width:60px;height:60px;left:50%;margin-left:-30px;-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}.cssanimations .cd-timeline-img.is-hidden{visibility:hidden}.cssanimations .cd-timeline-img.bounce-in{visibility:visible;-webkit-animation:cd-bounce-1 .6s;-moz-animation:cd-bounce-1 .6s;animation:cd-bounce-1 .6s}}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(0.5)}60%{opacity:1;-webkit-transform:scale(1.2)}100%{-webkit-transform:scale(1)}}@-moz-keyframes cd-bounce-1{0%{opacity:0;-moz-transform:scale(0.5)}60%{opacity:1;-moz-transform:scale(1.2)}100%{-moz-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(0.5);-moz-transform:scale(0.5);-ms-transform:scale(0.5);-o-transform:scale(0.5);transform:scale(0.5)}60%{opacity:1;-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}}.cd-timeline-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;box-shadow:0 3px 0 #B9C5CD}.cd-timeline-content:after{content:"";display:table;clear:both}.cd-timeline-content .cd-date,.cd-timeline-content .cd-read-more{display:inline-block}.cd-timeline-content .cd-read-more{padding:.8em 1em;position:relative;z-index:9999}.cd-timeline-content .cd-date{float:left;padding:.8em 0;opacity:.7;font-size:12px}.cd-timeline-title-container{display:inline-block;width:100%;float:left;margin:.55em 0}.cd-timeline-title-container h2{float:left}.cd-timeline-content .timeline-date{opacity:.7;font-size:.857143rem;float:right;margin-top:.5em}.cd-timeline-content::before{content:'';position:absolute;top:16px;right:100%;height:0;width:0;border:7px solid transparent;border-right:7px solid #fff}@media only screen and (min-width:768px){.cd-timeline-content h2{margin-top:0;margin-bottom:0}.cd-timeline-content .the-excerpt{display:block;float:left;width:100%;margin:1em 0;position:relative;z-index:999}.cd-timeline-content .cd-date,.cd-timeline-content .cd-read-more{font-size:14px;font-size:.875rem;position:relative;z-index:999}}@media only screen and (min-width:822px){.cd-timeline-content{margin-left:0;padding:1.6em;width:39%;background:#EFEFEF}.cd-timeline-content::before{top:24px;left:100%;border-color:transparent transparent transparent #EFEFEF}.cd-timeline-content .cd-read-more{float:left;color:#333}.cd-timeline-content .cd-date{position:absolute;width:100%;left:125%;top:15px}.cd-timeline-block:nth-child(even) .cd-timeline-content{float:right}.cd-timeline-block:nth-child(even) .cd-timeline-content::before{top:24px;left:auto;right:100%;border-color:transparent #EFEFEF transparent transparent}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more{float:right;color:#333;padding-right:0}.cd-timeline-block:nth-child(odd) .cd-timeline-content .cd-read-more{position:relative;z-index:99999;padding-left:0}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date{left:auto;right:125%;text-align:right}.cssanimations .cd-timeline-content.is-hidden{visibility:hidden}.cssanimations .cd-timeline-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2 .6s;-moz-animation:cd-bounce-2 .6s;animation:cd-bounce-2 .6s}}@media only screen and (min-width:822px){.cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in{-webkit-animation:cd-bounce-2-inverse .6s;-moz-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2{0%{opacity:0;-moz-transform:translateX(-100px)}60%{opacity:1;-moz-transform:translateX(20px)}100%{-moz-transform:translateX(0)}}@keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px);-moz-transform:translateX(-100px);-ms-transform:translateX(-100px);-o-transform:translateX(-100px);transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px);-moz-transform:translateX(20px);-ms-transform:translateX(20px);-o-transform:translateX(20px);transform:translateX(20px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2-inverse{0%{opacity:0;-moz-transform:translateX(100px)}60%{opacity:1;-moz-transform:translateX(-20px)}100%{-moz-transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px);-moz-transform:translateX(100px);-ms-transform:translateX(100px);-o-transform:translateX(100px);transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px);-moz-transform:translateX(-20px);-ms-transform:translateX(-20px);-o-transform:translateX(-20px);transform:translateX(-20px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}.more-to-come-container{position:relative;background:#EFEFEF;display:block;width:100%;text-align:center}.more-to-come{margin:10em 0 0;padding:1em 0;font-weight:200;color:rgba(100,100,100,.46)}.page article.page{background:0 0!important;box-shadow:none;border:none;-webkit-box-shadow:none}#cd-timeline span.fa{color:#fff;font-size:28px;display:block;text-align:center;margin-top:17px}.cd-timeline-icon-link{color:#fff!important}@media only screen and (max-width:821px){#cd-timeline span.fa{color:#fff;font-size:18px;display:block;text-align:center;margin-top:12px}.cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more,.cd-timeline-block:nth-child(odd) .cd-timeline-content .cd-read-more{padding-left:0!important;position:relative;z-index:99999}}.timeline-width100{width:100%}.timeline-width34{width:34%}.timeline-width30{width:30%}.timeline-date-left{width:100%;float:left!important}.single-post .announcement-banner-image,.single-post .return-to-timeline,.single-post .timeline-express-single-page-announcement-date{display:none}
|
images/evan-herman-mascot.png
ADDED
Binary file
|
images/support/btns-next-prev.png
ADDED
Binary file
|
images/support/pagination.png
ADDED
Binary file
|
images/support/reviews/support-review-1.jpg
ADDED
Binary file
|
images/support/reviews/support-review-2.jpg
ADDED
Binary file
|
images/support/reviews/support-review-3.jpg
ADDED
Binary file
|
images/support/reviews/support-review-4.jpg
ADDED
Binary file
|
images/support/reviews/support-review-5.jpg
ADDED
Binary file
|
images/support/reviews/support-review-6.jpg
ADDED
Binary file
|
images/support/reviews/support-review-7.jpg
ADDED
Binary file
|
images/support/timeline-express-logo-256.png
ADDED
Binary file
|
images/timeline-express-logo-128.png
ADDED
Binary file
|
js/support/jquery.slides.min.js
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
SlidesJS 3.0.4 http://slidesjs.com
|
3 |
+
(c) 2013 by Nathan Searles http://nathansearles.com
|
4 |
+
Updated: June 26th, 2013
|
5 |
+
Apache License: http://www.apache.org/licenses/LICENSE-2.0
|
6 |
+
*/
|
7 |
+
(function(){(function(e,t,n){var r,i,s;s="slidesjs";i={width:940,height:528,start:1,navigation:{active:!0,effect:"slide"},pagination:{active:!0,effect:"slide"},play:{active:!1,effect:"slide",interval:5e3,auto:!1,swap:!0,pauseOnHover:!1,restartDelay:2500},effect:{slide:{speed:500},fade:{speed:300,crossfade:!0}},callback:{loaded:function(){},start:function(){},complete:function(){}}};r=function(){function t(t,n){this.element=t;this.options=e.extend(!0,{},i,n);this._defaults=i;this._name=s;this.init()}return t}();r.prototype.init=function(){var n,r,i,s,o,u,a=this;n=e(this.element);this.data=e.data(this);e.data(this,"animating",!1);e.data(this,"total",n.children().not(".slidesjs-navigation",n).length);e.data(this,"current",this.options.start-1);e.data(this,"vendorPrefix",this._getVendorPrefix());if(typeof TouchEvent!="undefined"){e.data(this,"touch",!0);this.options.effect.slide.speed=this.options.effect.slide.speed/2}n.css({overflow:"hidden"});n.slidesContainer=n.children().not(".slidesjs-navigation",n).wrapAll("<div class='slidesjs-container'>",n).parent().css({overflow:"hidden",position:"relative"});e(".slidesjs-container",n).wrapInner("<div class='slidesjs-control'>",n).children();e(".slidesjs-control",n).css({position:"relative",left:0});e(".slidesjs-control",n).children().addClass("slidesjs-slide").css({position:"absolute",top:0,left:0,width:"100%",zIndex:0,display:"none",webkitBackfaceVisibility:"hidden"});e.each(e(".slidesjs-control",n).children(),function(t){var n;n=e(this);return n.attr("slidesjs-index",t)});if(this.data.touch){e(".slidesjs-control",n).on("touchstart",function(e){return a._touchstart(e)});e(".slidesjs-control",n).on("touchmove",function(e){return a._touchmove(e)});e(".slidesjs-control",n).on("touchend",function(e){return a._touchend(e)})}n.fadeIn(0);this.update();this.data.touch&&this._setuptouch();e(".slidesjs-control",n).children(":eq("+this.data.current+")").eq(0).fadeIn(0,function(){return e(this).css({zIndex:10})});if(this.options.navigation.active){o=e("<a>",{"class":"slidesjs-previous slidesjs-navigation",href:"#",title:"Previous",text:"Previous"}).appendTo(n);r=e("<a>",{"class":"slidesjs-next slidesjs-navigation",href:"#",title:"Next",text:"Next"}).appendTo(n)}e(".slidesjs-next",n).click(function(e){e.preventDefault();a.stop(!0);return a.next(a.options.navigation.effect)});e(".slidesjs-previous",n).click(function(e){e.preventDefault();a.stop(!0);return a.previous(a.options.navigation.effect)});if(this.options.play.active){s=e("<a>",{"class":"slidesjs-play slidesjs-navigation",href:"#",title:"Play",text:"Play"}).appendTo(n);u=e("<a>",{"class":"slidesjs-stop slidesjs-navigation",href:"#",title:"Stop",text:"Stop"}).appendTo(n);s.click(function(e){e.preventDefault();return a.play(!0)});u.click(function(e){e.preventDefault();return a.stop(!0)});this.options.play.swap&&u.css({display:"none"})}if(this.options.pagination.active){i=e("<ul>",{"class":"slidesjs-pagination"}).appendTo(n);e.each(new Array(this.data.total),function(t){var n,r;n=e("<li>",{"class":"slidesjs-pagination-item"}).appendTo(i);r=e("<a>",{href:"#","data-slidesjs-item":t,html:t+1}).appendTo(n);return r.click(function(t){t.preventDefault();a.stop(!0);return a.goto(e(t.currentTarget).attr("data-slidesjs-item")*1+1)})})}e(t).bind("resize",function(){return a.update()});this._setActive();this.options.play.auto&&this.play();return this.options.callback.loaded(this.options.start)};r.prototype._setActive=function(t){var n,r;n=e(this.element);this.data=e.data(this);r=t>-1?t:this.data.current;e(".active",n).removeClass("active");return e(".slidesjs-pagination li:eq("+r+") a",n).addClass("active")};r.prototype.update=function(){var t,n,r;t=e(this.element);this.data=e.data(this);e(".slidesjs-control",t).children(":not(:eq("+this.data.current+"))").css({display:"none",left:0,zIndex:0});r=t.width();n=this.options.height/this.options.width*r;this.options.width=r;this.options.height=n;return e(".slidesjs-control, .slidesjs-container",t).css({width:r,height:n})};r.prototype.next=function(t){var n;n=e(this.element);this.data=e.data(this);e.data(this,"direction","next");t===void 0&&(t=this.options.navigation.effect);return t==="fade"?this._fade():this._slide()};r.prototype.previous=function(t){var n;n=e(this.element);this.data=e.data(this);e.data(this,"direction","previous");t===void 0&&(t=this.options.navigation.effect);return t==="fade"?this._fade():this._slide()};r.prototype.goto=function(t){var n,r;n=e(this.element);this.data=e.data(this);r===void 0&&(r=this.options.pagination.effect);t>this.data.total?t=this.data.total:t<1&&(t=1);if(typeof t=="number")return r==="fade"?this._fade(t):this._slide(t);if(typeof t=="string"){if(t==="first")return r==="fade"?this._fade(0):this._slide(0);if(t==="last")return r==="fade"?this._fade(this.data.total):this._slide(this.data.total)}};r.prototype._setuptouch=function(){var t,n,r,i;t=e(this.element);this.data=e.data(this);i=e(".slidesjs-control",t);n=this.data.current+1;r=this.data.current-1;r<0&&(r=this.data.total-1);n>this.data.total-1&&(n=0);i.children(":eq("+n+")").css({display:"block",left:this.options.width});return i.children(":eq("+r+")").css({display:"block",left:-this.options.width})};r.prototype._touchstart=function(t){var n,r;n=e(this.element);this.data=e.data(this);r=t.originalEvent.touches[0];this._setuptouch();e.data(this,"touchtimer",Number(new Date));e.data(this,"touchstartx",r.pageX);e.data(this,"touchstarty",r.pageY);return t.stopPropagation()};r.prototype._touchend=function(t){var n,r,i,s,o,u,a,f=this;n=e(this.element);this.data=e.data(this);u=t.originalEvent.touches[0];s=e(".slidesjs-control",n);if(s.position().left>this.options.width*.5||s.position().left>this.options.width*.1&&Number(new Date)-this.data.touchtimer<250){e.data(this,"direction","previous");this._slide()}else if(s.position().left<-(this.options.width*.5)||s.position().left<-(this.options.width*.1)&&Number(new Date)-this.data.touchtimer<250){e.data(this,"direction","next");this._slide()}else{i=this.data.vendorPrefix;a=i+"Transform";r=i+"TransitionDuration";o=i+"TransitionTimingFunction";s[0].style[a]="translateX(0px)";s[0].style[r]=this.options.effect.slide.speed*.85+"ms"}s.on("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",function(){i=f.data.vendorPrefix;a=i+"Transform";r=i+"TransitionDuration";o=i+"TransitionTimingFunction";s[0].style[a]="";s[0].style[r]="";return s[0].style[o]=""});return t.stopPropagation()};r.prototype._touchmove=function(t){var n,r,i,s,o;n=e(this.element);this.data=e.data(this);s=t.originalEvent.touches[0];r=this.data.vendorPrefix;i=e(".slidesjs-control",n);o=r+"Transform";e.data(this,"scrolling",Math.abs(s.pageX-this.data.touchstartx)<Math.abs(s.pageY-this.data.touchstarty));if(!this.data.animating&&!this.data.scrolling){t.preventDefault();this._setuptouch();i[0].style[o]="translateX("+(s.pageX-this.data.touchstartx)+"px)"}return t.stopPropagation()};r.prototype.play=function(t){var n,r,i,s=this;n=e(this.element);this.data=e.data(this);if(!this.data.playInterval){if(t){r=this.data.current;this.data.direction="next";this.options.play.effect==="fade"?this._fade():this._slide()}e.data(this,"playInterval",setInterval(function(){r=s.data.current;s.data.direction="next";return s.options.play.effect==="fade"?s._fade():s._slide()},this.options.play.interval));i=e(".slidesjs-container",n);if(this.options.play.pauseOnHover){i.unbind();i.bind("mouseenter",function(){return s.stop()});i.bind("mouseleave",function(){return s.options.play.restartDelay?e.data(s,"restartDelay",setTimeout(function(){return s.play(!0)},s.options.play.restartDelay)):s.play()})}e.data(this,"playing",!0);e(".slidesjs-play",n).addClass("slidesjs-playing");if(this.options.play.swap){e(".slidesjs-play",n).hide();return e(".slidesjs-stop",n).show()}}};r.prototype.stop=function(t){var n;n=e(this.element);this.data=e.data(this);clearInterval(this.data.playInterval);this.options.play.pauseOnHover&&t&&e(".slidesjs-container",n).unbind();e.data(this,"playInterval",null);e.data(this,"playing",!1);e(".slidesjs-play",n).removeClass("slidesjs-playing");if(this.options.play.swap){e(".slidesjs-stop",n).hide();return e(".slidesjs-play",n).show()}};r.prototype._slide=function(t){var n,r,i,s,o,u,a,f,l,c,h=this;n=e(this.element);this.data=e.data(this);if(!this.data.animating&&t!==this.data.current+1){e.data(this,"animating",!0);r=this.data.current;if(t>-1){t-=1;c=t>r?1:-1;i=t>r?-this.options.width:this.options.width;o=t}else{c=this.data.direction==="next"?1:-1;i=this.data.direction==="next"?-this.options.width:this.options.width;o=r+c}o===-1&&(o=this.data.total-1);o===this.data.total&&(o=0);this._setActive(o);a=e(".slidesjs-control",n);t>-1&&a.children(":not(:eq("+r+"))").css({display:"none",left:0,zIndex:0});a.children(":eq("+o+")").css({display:"block",left:c*this.options.width,zIndex:10});this.options.callback.start(r+1);if(this.data.vendorPrefix){u=this.data.vendorPrefix;l=u+"Transform";s=u+"TransitionDuration";f=u+"TransitionTimingFunction";a[0].style[l]="translateX("+i+"px)";a[0].style[s]=this.options.effect.slide.speed+"ms";return a.on("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",function(){a[0].style[l]="";a[0].style[s]="";a.children(":eq("+o+")").css({left:0});a.children(":eq("+r+")").css({display:"none",left:0,zIndex:0});e.data(h,"current",o);e.data(h,"animating",!1);a.unbind("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd");a.children(":not(:eq("+o+"))").css({display:"none",left:0,zIndex:0});h.data.touch&&h._setuptouch();return h.options.callback.complete(o+1)})}return a.stop().animate({left:i},this.options.effect.slide.speed,function(){a.css({left:0});a.children(":eq("+o+")").css({left:0});return a.children(":eq("+r+")").css({display:"none",left:0,zIndex:0},e.data(h,"current",o),e.data(h,"animating",!1),h.options.callback.complete(o+1))})}};r.prototype._fade=function(t){var n,r,i,s,o,u=this;n=e(this.element);this.data=e.data(this);if(!this.data.animating&&t!==this.data.current+1){e.data(this,"animating",!0);r=this.data.current;if(t){t-=1;o=t>r?1:-1;i=t}else{o=this.data.direction==="next"?1:-1;i=r+o}i===-1&&(i=this.data.total-1);i===this.data.total&&(i=0);this._setActive(i);s=e(".slidesjs-control",n);s.children(":eq("+i+")").css({display:"none",left:0,zIndex:10});this.options.callback.start(r+1);if(this.options.effect.fade.crossfade){s.children(":eq("+this.data.current+")").stop().fadeOut(this.options.effect.fade.speed);return s.children(":eq("+i+")").stop().fadeIn(this.options.effect.fade.speed,function(){s.children(":eq("+i+")").css({zIndex:0});e.data(u,"animating",!1);e.data(u,"current",i);return u.options.callback.complete(i+1)})}return s.children(":eq("+r+")").stop().fadeOut(this.options.effect.fade.speed,function(){s.children(":eq("+i+")").stop().fadeIn(u.options.effect.fade.speed,function(){return s.children(":eq("+i+")").css({zIndex:10})});e.data(u,"animating",!1);e.data(u,"current",i);return u.options.callback.complete(i+1)})}};r.prototype._getVendorPrefix=function(){var e,t,r,i,s;e=n.body||n.documentElement;r=e.style;i="transition";s=["Moz","Webkit","Khtml","O","ms"];i=i.charAt(0).toUpperCase()+i.substr(1);t=0;while(t<s.length){if(typeof r[s[t]+i]=="string")return s[t];t++}return!1};return e.fn[s]=function(t){return this.each(function(){if(!e.data(this,"plugin_"+s))return e.data(this,"plugin_"+s,new r(this,t))})}})(jQuery,window,document)}).call(this);
|
lib/metabox/about-template.php
CHANGED
@@ -35,13 +35,13 @@
|
|
35 |
</style>
|
36 |
|
37 |
<section class="te-button-container">
|
38 |
-
<a class="button-secondary" href="
|
39 |
<a class="button-secondary" href="https://wordpress.org/support/view/plugin-reviews/timeline-express" target="_blank"><?php _e( 'Review' , 'timeline-express' ); ?></a>
|
40 |
<a class="button-secondary" href="http://www.evan-herman.com/contact/?contact-name=<?php echo $current_user_name; ?>&contact-reason=I want to make a donation for all your hard work" target="_blank"><?php _e( 'Donate' , 'timeline-express' ); ?></a>
|
41 |
<br />
|
42 |
<br />
|
43 |
<!-- social media buttons -->
|
44 |
-
<a href="
|
45 |
<a href="http://twitter.com/evanmherman" title="Twitter" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/twitter.png" style="border: 0px none;" alt="Evan Herman - Twitter Profile" height="24" width="24"></a>
|
46 |
<a href="https://www.linkedin.com/profile/view?id=46246110" title="Linkedin" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/linkedin.png" alt="Evan Herman - LinkedIn Profile" border="0" height="24" width="24"></a>
|
47 |
<a href="http://www.evan-herman.com/feed/" title="RSS Feed" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/rss_icon.png" alt="Evan Herman - RSS Feed" border="0" height="24" width="24"></a>
|
35 |
</style>
|
36 |
|
37 |
<section class="te-button-container">
|
38 |
+
<a class="button-secondary" href="<?php echo admin_url() . 'edit.php?post_type=te_announcements&page=timeline-express-support'; ?>" target="_blank"><?php _e( 'Help!' , 'timeline-express' ); ?></a>
|
39 |
<a class="button-secondary" href="https://wordpress.org/support/view/plugin-reviews/timeline-express" target="_blank"><?php _e( 'Review' , 'timeline-express' ); ?></a>
|
40 |
<a class="button-secondary" href="http://www.evan-herman.com/contact/?contact-name=<?php echo $current_user_name; ?>&contact-reason=I want to make a donation for all your hard work" target="_blank"><?php _e( 'Donate' , 'timeline-express' ); ?></a>
|
41 |
<br />
|
42 |
<br />
|
43 |
<!-- social media buttons -->
|
44 |
+
<a href="https://profiles.wordpress.org/eherman24#content-plugins" title="WordPress" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/wordpress-icon.png" style="border: 0px none;" alt="Evan Herman - WordPress Profile" height="24" width="24"></a>
|
45 |
<a href="http://twitter.com/evanmherman" title="Twitter" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/twitter.png" style="border: 0px none;" alt="Evan Herman - Twitter Profile" height="24" width="24"></a>
|
46 |
<a href="https://www.linkedin.com/profile/view?id=46246110" title="Linkedin" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/linkedin.png" alt="Evan Herman - LinkedIn Profile" border="0" height="24" width="24"></a>
|
47 |
<a href="http://www.evan-herman.com/feed/" title="RSS Feed" target="_blank" class="evan_herman_about_icon"><img src="<?php echo TIMELINE_EXPRESS_URL; ?>/images/rss_icon.png" alt="Evan Herman - RSS Feed" border="0" height="24" width="24"></a>
|
lib/support-contact-form.php
ADDED
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( isset( $_REQUEST['action'] ) ) {
|
4 |
+
$action=$_REQUEST['action'];
|
5 |
+
}
|
6 |
+
|
7 |
+
if ( !isset( $action ) ) /* display the contact form */ {
|
8 |
+
?>
|
9 |
+
<p><?php _e( 'If you need support, please fill out the following form. I will get back to you with some support as soon as possible.' , 'timeline-express' ); ?></p>
|
10 |
+
<p><em><?php _e( 'note: support requests are limitd to one per hour, to help reduce spam.' , 'timeline-express' ); ?></em></p>
|
11 |
+
<form action="" method="POST" enctype="multipart/form-data">
|
12 |
+
<input type="hidden" name="action" value="submit">
|
13 |
+
<label for="name"><?php _e( 'Your name' , 'timeline-express' ); ?>: <br />
|
14 |
+
<input name="name" type="text" value="<?php echo $license_data->customer_name; ?>" size="30"/></label>
|
15 |
+
<label for="message"><?php _e( 'Your message' , 'timeline-express' ); ?>:<br>
|
16 |
+
<textarea name="message" rows="7" cols="30" placeholder="<?php _e( 'please describe your issue in as much detail as possible' , 'timeline-express' ); ?>"></textarea></label>
|
17 |
+
<input type="submit" class="button-primary" value="Get Spport"/>
|
18 |
+
</form>
|
19 |
+
<?php
|
20 |
+
} else /* send the submitted data */ {
|
21 |
+
$name = trim( $_REQUEST['name'] );
|
22 |
+
$email = $license_data->customer_email;
|
23 |
+
// append the users license key, and other data
|
24 |
+
$message = '<strong>License Key :</strong> ' . $license . '<br /><strong>Expires :</strong> ' . date( 'F jS, Y' , strtotime( $license_data->expires ) ) . ' <br /><br /> <strong>Support Issue :</strong><br />' . $_REQUEST['message'];
|
25 |
+
|
26 |
+
if ( ( $name=="" ) || ( $email=="" ) || ( $_REQUEST['message']=="" ) ) {
|
27 |
+
echo "All fields are required, please fill <a href=\"\">the form</a> again.";
|
28 |
+
} else {
|
29 |
+
$from="From: $name <$email>";
|
30 |
+
$content_type='Content-type: text/html';
|
31 |
+
$subject="Premium Support Request: Timeline Express";
|
32 |
+
$headers = array( $from , $content_type );
|
33 |
+
|
34 |
+
$email = wp_mail("evan.m.herman@gmail.com", $subject, $message, $headers);
|
35 |
+
|
36 |
+
if ( is_wp_error( $email ) ) {
|
37 |
+
echo '<p>' . __( 'There was an error sending your request' , 'timeline-express' ) . ' : ' . $email->get_error_message() . '</p>';
|
38 |
+
echo '<p>' . __( 'If the error persists, please contact me directly for support at' , 'timeline-express' ) . '<a href="mailto:Evan.M.Herman@gmail.com" title="Email Support">Evan.M.Herman@Gmail.com</a></p>';
|
39 |
+
} else {
|
40 |
+
if ( $email ) {
|
41 |
+
set_transient( 'timeline_express_support_request_sent', '1', 1 * HOUR_IN_SECONDS );
|
42 |
+
echo '<p>' . __( "Support request successfully sent. I will be in touch regarding your issue shortly." , "timeline-express" ) . '</p>';
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
|
47 |
+
}
|
48 |
+
}
|
49 |
+
?>
|
pages/options.php
CHANGED
@@ -147,7 +147,7 @@ function toggle_delete_checkbox() {
|
|
147 |
</strong>
|
148 |
</span>
|
149 |
</a>
|
150 |
-
<a href="
|
151 |
<span class="timeline_express_need_support">
|
152 |
<strong>
|
153 |
<?php _e( 'Need Help?', 'timeline-express' ); ?> <br />
|
@@ -170,14 +170,12 @@ function toggle_delete_checkbox() {
|
|
170 |
</a>
|
171 |
</div>
|
172 |
|
173 |
-
|
174 |
-
<h2 class="nav-tab-wrapper">
|
175 |
-
<a href="#" onclick="return false;" class="nav-tab <?php echo $active_tab == 'settings' ? 'nav-tab-active' : ''; ?>"><?php _e('Timeline Express','timeline-express'); ?></a>
|
176 |
-
</h2>
|
177 |
-
|
178 |
-
<h2 id="timeline-express-page-header">
|
179 |
<div id="timeline-express-icon" class="icon32"></div><?php _e('Timeline Express Settings','timeline-express'); ?>
|
180 |
-
|
|
|
|
|
|
|
181 |
|
182 |
<div class="timeline-express-status" id="timeline-express-status"></div>
|
183 |
|
@@ -250,7 +248,7 @@ function toggle_delete_checkbox() {
|
|
250 |
</tr>
|
251 |
<!-- Excerpt Trim Length -->
|
252 |
<tr valign="top">
|
253 |
-
<th scope="row"><label for="excerpt-trim-length"><?php _e('Announcement
|
254 |
<td>
|
255 |
<input <?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '1' ) { ?> style="display:none;" <?php } ?> type="number" name="excerpt-trim-length" min="25" max="200" value="<?php echo $this->timeline_express_optionVal['excerpt-trim-length']; ?>"><label for="excerpt-random-length"><input type="checkbox" id="excerpt-random-length" name="excerpt-random-length" onclick="changeRandomTrimLengthCheckbox();" value="1" <?php checked( $this->timeline_express_optionVal['excerpt-random-length'] , '1' ); ?> <?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '0' ) { ?> style="margin-left:.5em;" <?php } ?>><span id="random-lenth-text-container"<?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '0' ) { ?> class="random-length-text" <?php } ?>>random length</label></span>
|
256 |
</td>
|
@@ -276,7 +274,7 @@ function toggle_delete_checkbox() {
|
|
276 |
<td></td>
|
277 |
<!-- Toggle Date Visibility Description -->
|
278 |
<td class="timeline-express-settings-description">
|
279 |
-
<?php _e('
|
280 |
</td>
|
281 |
</tr>
|
282 |
<!-- Toggle Read Visibility More -->
|
@@ -293,7 +291,7 @@ function toggle_delete_checkbox() {
|
|
293 |
<td></td>
|
294 |
<!-- Toggle Read More Visibility Description -->
|
295 |
<td class="timeline-express-settings-description">
|
296 |
-
<?php _e('
|
297 |
</td>
|
298 |
</tr>
|
299 |
<tr valign="top">
|
@@ -367,8 +365,8 @@ function toggle_delete_checkbox() {
|
|
367 |
</td>
|
368 |
</tr>
|
369 |
<tr valign="top">
|
370 |
-
<!-- No
|
371 |
-
<th scope="row"><label for="no-events-message"><?php _e('No
|
372 |
<td>
|
373 |
<?php wp_editor( stripslashes( $this->timeline_express_optionVal['no-events-message'] ) , 'no-events-message', $no_event_messages_parameters); ?>
|
374 |
</td>
|
147 |
</strong>
|
148 |
</span>
|
149 |
</a>
|
150 |
+
<a href="<?php echo admin_url() . 'edit.php?post_type=te_announcements&page=timeline-express-support'; ?>" title="Timeline Express Premium Support">
|
151 |
<span class="timeline_express_need_support">
|
152 |
<strong>
|
153 |
<?php _e( 'Need Help?', 'timeline-express' ); ?> <br />
|
170 |
</a>
|
171 |
</div>
|
172 |
|
173 |
+
<h1 id="timeline-express-page-header">
|
|
|
|
|
|
|
|
|
|
|
174 |
<div id="timeline-express-icon" class="icon32"></div><?php _e('Timeline Express Settings','timeline-express'); ?>
|
175 |
+
<p style="margin-top:0;font-weight:200;"><?php _e( 'make adjustments to your timeline here, ranging from style to display options' , 'timeline-express' ); ?><p>
|
176 |
+
</h1>
|
177 |
+
|
178 |
+
<hr style="margin-top:4em;"/>
|
179 |
|
180 |
<div class="timeline-express-status" id="timeline-express-status"></div>
|
181 |
|
248 |
</tr>
|
249 |
<!-- Excerpt Trim Length -->
|
250 |
<tr valign="top">
|
251 |
+
<th scope="row"><label for="excerpt-trim-length"><?php _e('Announcement Excerpt Length','timeline-express'); ?></label></th>
|
252 |
<td>
|
253 |
<input <?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '1' ) { ?> style="display:none;" <?php } ?> type="number" name="excerpt-trim-length" min="25" max="200" value="<?php echo $this->timeline_express_optionVal['excerpt-trim-length']; ?>"><label for="excerpt-random-length"><input type="checkbox" id="excerpt-random-length" name="excerpt-random-length" onclick="changeRandomTrimLengthCheckbox();" value="1" <?php checked( $this->timeline_express_optionVal['excerpt-random-length'] , '1' ); ?> <?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '0' ) { ?> style="margin-left:.5em;" <?php } ?>><span id="random-lenth-text-container"<?php if( $this->timeline_express_optionVal['excerpt-random-length'] == '0' ) { ?> class="random-length-text" <?php } ?>>random length</label></span>
|
254 |
</td>
|
274 |
<td></td>
|
275 |
<!-- Toggle Date Visibility Description -->
|
276 |
<td class="timeline-express-settings-description">
|
277 |
+
<?php _e('Toggle the visibility of the date next to the icon.','timeline-express'); ?>
|
278 |
</td>
|
279 |
</tr>
|
280 |
<!-- Toggle Read Visibility More -->
|
291 |
<td></td>
|
292 |
<!-- Toggle Read More Visibility Description -->
|
293 |
<td class="timeline-express-settings-description">
|
294 |
+
<?php _e('Toggle the visibility of the read more button. Hide to prevent users from viewing the full announcement.','timeline-express'); ?>
|
295 |
</td>
|
296 |
</tr>
|
297 |
<tr valign="top">
|
365 |
</td>
|
366 |
</tr>
|
367 |
<tr valign="top">
|
368 |
+
<!-- No Announcements Message -->
|
369 |
+
<th scope="row"><label for="no-events-message"><?php _e('No Announcements Message','timeline-express'); ?></label></th>
|
370 |
<td>
|
371 |
<?php wp_editor( stripslashes( $this->timeline_express_optionVal['no-events-message'] ) , 'no-events-message', $no_event_messages_parameters); ?>
|
372 |
</td>
|
pages/support.php
ADDED
@@ -0,0 +1,208 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Premium support template
|
4 |
+
// to do - setup chron to check license status once a day
|
5 |
+
// double check if we can't move this all into it's own support class file
|
6 |
+
//
|
7 |
+
*/
|
8 |
+
wp_enqueue_style( 'slideshow-css' , TIMELINE_EXPRESS_URL . 'css/timeline-express-css3-slideshow.css' );
|
9 |
+
wp_register_script( 'slideshow-js' , TIMELINE_EXPRESS_URL . 'js/support/jquery.slides.min.js' , array( 'jquery' ) , 'all' );
|
10 |
+
wp_enqueue_script( 'slideshow-js' );
|
11 |
+
|
12 |
+
$review_images = scandir( TIMELINE_EXPRESS_PATH . 'images/support/reviews' );
|
13 |
+
$license = get_option( 'timeline_express_license_key' );
|
14 |
+
$status = get_option( 'timeline_express_license_status' );
|
15 |
+
$license_data = get_option( 'timeline_express_license_data' );
|
16 |
+
?>
|
17 |
+
|
18 |
+
<div id="timeline-express-support-page-wrap">
|
19 |
+
|
20 |
+
|
21 |
+
<section id="timeline-express-support-page-header">
|
22 |
+
|
23 |
+
<img src="<?php echo TIMELINE_EXPRESS_URL . 'images/support/timeline-express-logo-256.png'; ?>" title="Timeline Express Logo" class="te-logo" >
|
24 |
+
|
25 |
+
<section class="support-subhead">
|
26 |
+
<h1 style="margin:0 0 1.2em 0;font-size:25px;"><?php _e( 'Timeline Express Support' , 'timeline-express' ); ?></h1>
|
27 |
+
<?php if( false !== $license ) {
|
28 |
+
if( $status !== false && $status == 'valid' ) { ?>
|
29 |
+
<p style="font-weight:200;"><?php _e( 'Thank you for purchasing a support license!' , 'timeline-express' ); ?></p>
|
30 |
+
<p style="font-weight:200;"><?php _e( 'If you run into any issues, or need support, feel free to submit a support ticket via the contact form below.' , 'timeline-express' ); ?></p>
|
31 |
+
<?php } else { ?>
|
32 |
+
<p style="font-weight:200;">
|
33 |
+
<?php _e( 'Have a support request? Please consider ' , 'timeline-express' ); ?>
|
34 |
+
<a href="http://www.evan-herman.com/wordpress-plugin/timeline-express/" title="Purchase a Support License Now" target="_blank"><?php _e( 'purchasing ' , 'timeline-express' ); ?></a>
|
35 |
+
<?php _e( 'a support license.' , 'timeline-express' ); ?>
|
36 |
+
</p>
|
37 |
+
<p style="font-weight:200;"><?php _e( 'Your purchase will go towards the continued development and support of Timeline Express, so the plugin will continue to thrive and improve.' , 'timeline-express' ); ?></p>
|
38 |
+
<?php }
|
39 |
+
} ?>
|
40 |
+
|
41 |
+
<!-- if the user doesn't have a license key, lets display the slider -->
|
42 |
+
<?php if( false !== $license ) {
|
43 |
+
|
44 |
+
if( $status !== false && $status != 'valid' || $status == false ) { ?>
|
45 |
+
|
46 |
+
<div class="te-slider-container">
|
47 |
+
<div id="slides">
|
48 |
+
<?php
|
49 |
+
foreach( $review_images as $review ) {
|
50 |
+
if ( $review != '.' && $review != '..' ) {
|
51 |
+
echo '<img src="' . TIMELINE_EXPRESS_URL .'images/support/reviews/' . $review . '" alt="review" >';
|
52 |
+
}
|
53 |
+
}
|
54 |
+
?>
|
55 |
+
</div>
|
56 |
+
</div>
|
57 |
+
|
58 |
+
<?php
|
59 |
+
}
|
60 |
+
} ?>
|
61 |
+
|
62 |
+
</section>
|
63 |
+
|
64 |
+
</section>
|
65 |
+
|
66 |
+
<hr />
|
67 |
+
|
68 |
+
<form id="support-license-form" method="post" action="options.php">
|
69 |
+
|
70 |
+
<?php settings_fields('timeline_express_license'); ?>
|
71 |
+
|
72 |
+
<label for="timeline_express_license_key">
|
73 |
+
<strong><?php _e( 'Support License Key' , 'timeline-express' ); ?></strong>
|
74 |
+
|
75 |
+
<p style="display:inline-block;width:100%;">
|
76 |
+
|
77 |
+
<input id="timeline_express_license_key" type="text" placeholder="<?php _e( 'Support license key' , 'timeline-express' ); ?>" name="timeline_express_license_key" value="<?php esc_attr_e( $license ); ?>">
|
78 |
+
<?php if( false !== $license ) {
|
79 |
+
if( $status !== false && $status == 'valid' ) { $license_data = get_option( 'timeline_express_license_data' ); ?>
|
80 |
+
<span class="dashicons dashicons-yes timeline-express-valid-license" title="<?php _e( 'Valid and Active License' , 'timeline-express' ); ?>"></span>
|
81 |
+
<?php } else if ( $status !== false && $status == 'invalid' && $license_data->error == 'revoked' ) { // invalid status returned ?>
|
82 |
+
<a href="http://www.evan-herman.com/wordpress-plugin/timeline-express/" title="Purchase a Support License Now" target="_blank">
|
83 |
+
<input type="button" class="button-secondary purchase-support-license" value="<?php _e( 'Purchase a License' , 'timeline-express' ); ?>">
|
84 |
+
</a>
|
85 |
+
<section class="timeline-express-invalid-license-error"><span class="dashicons dashicons-no-alt"></span><?php echo __( 'There was an error with your license. It appears that your license key has been ' , 'timeline-express' ) . '<strong>' . $license_data->error . '</strong>' . '. ' . __( 'Please get in contact with support at ' , 'timeline-express' ); ?><a href="http://www.evan-herman.com/contact/" title="Evan Herman Plugin Development"><?php _e( 'EH Dev. Shop' , 'timeline-express' ); ?></a> <?php _e( ' to resolve the issue' , 'timeline-express' ); ?>.</section>
|
86 |
+
<?php } else if ( $status !== false && $status == 'invalid' && $license_data->error == 'missing' ) { // invalid api key...doesn't exist in the database, was never purchased. ?>
|
87 |
+
<a href="http://www.evan-herman.com/wordpress-plugin/timeline-express/" title="Purchase a Support License Now" target="_blank">
|
88 |
+
<input type="button" class="button-secondary purchase-support-license" value="<?php _e( 'Purchase a License' , 'timeline-express' ); ?>">
|
89 |
+
</a>
|
90 |
+
<section class="timeline-express-invalid-license-error"><span class="dashicons dashicons-no-alt"></span><?php echo __( 'Sorry this license key appears to be invalid. Please purchase a valid license key.' , 'timeline-express' ); ?></section>
|
91 |
+
<?php } else if ( $status !== false && $status == 'invalid' && $license_data->error == 'expired' || $status !== false && $status == 'expired' ) { // invalid api key...doesn't exist in the database, was never purchased. ?>
|
92 |
+
<a href="http://www.evan-herman.com/wordpress-plugin/timeline-express/" class="button-secondary purchase-support-license" alt="<?php esc_attr_e( $license ); ?>" title="<?php _e( 'Renew your Timeline Express license' , 'timeline-express' ); ?>" target="_blank">
|
93 |
+
<?php _e( 'Renew Your License' , 'timeline-express' ); ?>
|
94 |
+
</a>
|
95 |
+
<section class="timeline-express-invalid-license-error"><span class="dashicons dashicons-no-alt"></span><?php echo __( 'Oops, it looks like your license has expired. Please consider renewing your license for another year to continue receiving support.' , 'timeline-express' ); ?></section>
|
96 |
+
<?php } else { ?>
|
97 |
+
<a href="http://www.evan-herman.com/wordpress-plugin/timeline-express/" title="Purchase a Support License Now" target="_blank">
|
98 |
+
<input type="button" class="button-secondary purchase-support-license" value="<?php _e( 'Purchase a License' , 'timeline-express' ); ?>">
|
99 |
+
</a>
|
100 |
+
<?php
|
101 |
+
}
|
102 |
+
}
|
103 |
+
?>
|
104 |
+
</p>
|
105 |
+
|
106 |
+
</label>
|
107 |
+
|
108 |
+
<section class="timeline-express-license-buttons">
|
109 |
+
|
110 |
+
<input type="submit" class="button-primary" value="Save Changes" style="float:left; margin-right: 1em;">
|
111 |
+
|
112 |
+
<!-- when active key, display a support ticketing form -->
|
113 |
+
<?php if( false !== $license ) { ?>
|
114 |
+
<?php if( $status !== false && $status == 'valid' ) { $license_data = get_option( 'timeline_express_license_data' ); ?>
|
115 |
+
<?php wp_nonce_field( 'timeline_express_nonce', 'timeline_express_nonce' ); ?>
|
116 |
+
<input type="submit" class="button-secondary" name="timeline_express_license_deactivate" value="<?php _e('Deactivate License'); ?>"/>
|
117 |
+
<?php } else {
|
118 |
+
if ( $license != '' ) {
|
119 |
+
wp_nonce_field( 'timeline_express_nonce', 'timeline_express_nonce' ); ?>
|
120 |
+
<input type="submit" class="button-secondary" name="timeline_express_license_activate" value="<?php _e('Activate License'); ?>"/>
|
121 |
+
<?php } } ?>
|
122 |
+
<?php } ?>
|
123 |
+
|
124 |
+
</section>
|
125 |
+
|
126 |
+
</form>
|
127 |
+
|
128 |
+
<?php if( false !== $license ) {
|
129 |
+
|
130 |
+
if( $status !== false && $status == 'valid' ) {
|
131 |
+
|
132 |
+
$license_data = get_option( 'timeline_express_license_data' ); ?>
|
133 |
+
|
134 |
+
<hr style="margin-bottom:2.5em;" />
|
135 |
+
|
136 |
+
<div style="width:100%; display:inline-block;">
|
137 |
+
|
138 |
+
<table class="widefat fixed" cellspacing="0" style="width:100%;max-width:500px; float:right;">
|
139 |
+
<thead>
|
140 |
+
<tr>
|
141 |
+
<th id="columnname" class="manage-column column-columnname" scope="col"><?php _e( 'License Info.' , 'timeline-express' ); ?></th>
|
142 |
+
<th id="columnname" class="manage-column column-columnname num" scope="col"></th>
|
143 |
+
</tr>
|
144 |
+
</thead>
|
145 |
+
|
146 |
+
<tbody>
|
147 |
+
|
148 |
+
<tr class="alternate">
|
149 |
+
<td class="column-columnname"><b><?php _e( 'License Holder' , 'timeline-express' ); ?></b></td>
|
150 |
+
<td class="column-columnname" style="text-align:center;"><?php echo $license_data->customer_name; ?></td>
|
151 |
+
</tr>
|
152 |
+
|
153 |
+
<tr class="alternate">
|
154 |
+
<td class="column-columnname"><b><?php _e( 'Sites Active/Limit' , 'timeline-express' ); ?></b></td>
|
155 |
+
<td class="column-columnname" style="text-align:center;"><?php echo $license_data->site_count . '/' . $license_data->license_limit; ?></td>
|
156 |
+
</tr>
|
157 |
+
|
158 |
+
<tr>
|
159 |
+
<td class="column-columnname"><b><?php _e( 'License Expires' , 'timeline-express' ); ?></b></td>
|
160 |
+
<td class="column-columnname" style="text-align:center;"><?php echo date( 'F jS, Y' , strtotime( $license_data->expires ) ); $days_remaining = (strtotime( $license_data->expires ) - strtotime('now')) / (60 * 60 * 24); if ( round( $days_remaining ) < 30 ) { echo '<span class="license-expiring-soon">expiring soon</span>'; } ?></td>
|
161 |
+
</tr>
|
162 |
+
|
163 |
+
</tbody>
|
164 |
+
</table>
|
165 |
+
|
166 |
+
|
167 |
+
<section id="premium-support-contact-form">
|
168 |
+
<h2 style="margin-bottom:.5em;margin-top:0;"><?php _e( 'Premium Support Ticketing' , 'timeline-express' ); ?></h2>
|
169 |
+
<?php
|
170 |
+
// check if the user has sent a request in the past hour
|
171 |
+
if ( false === get_transient( 'timeline_express_support_request_sent' ) ) {
|
172 |
+
require_once TIMELINE_EXPRESS_PATH . 'lib/support-contact-form.php';
|
173 |
+
} else {
|
174 |
+
_e( "It looks like you have recently sent us a support request. We limit the number of support requests to 1 per hour, to avoid spam. Sorry for the inconvinience, and thank you for understanding." , "timeline-express" );
|
175 |
+
}
|
176 |
+
?>
|
177 |
+
</section>
|
178 |
+
|
179 |
+
</div>
|
180 |
+
|
181 |
+
<?php
|
182 |
+
}
|
183 |
+
}
|
184 |
+
?>
|
185 |
+
|
186 |
+
<section id="eh-logos" style="display:block;width:100%;text-align:right;">
|
187 |
+
<a href="http://www.evan-herman.com" target="_blank" title="Evan Herman Professional WordPress Development">
|
188 |
+
<img src="<?php echo TIMELINE_EXPRESS_URL; ?>images/evan_herman_logo.png" alt="Evan Herman Logo" style="margin-right:4.5em;"><br />
|
189 |
+
<img src="<?php echo TIMELINE_EXPRESS_URL; ?>images/evan-herman-mascot.png" alt="Evan Herman Mascot" style="width:300px;margin-top:1em;" >
|
190 |
+
</a>
|
191 |
+
</section>
|
192 |
+
|
193 |
+
</div>
|
194 |
+
|
195 |
+
<!-- initialize the slider :) -->
|
196 |
+
<script>
|
197 |
+
jQuery(function() {
|
198 |
+
jQuery('#slides').slidesjs({
|
199 |
+
height: 200,
|
200 |
+
play: {
|
201 |
+
active: true,
|
202 |
+
auto: true,
|
203 |
+
interval: 6000,
|
204 |
+
swap: true
|
205 |
+
}
|
206 |
+
});
|
207 |
+
});
|
208 |
+
</script>
|
pages/welcome.php
CHANGED
@@ -71,7 +71,7 @@ jQuery(document).ready(function() {
|
|
71 |
</li>
|
72 |
<li>
|
73 |
<div class="admin-manage-announcements"></div>
|
74 |
-
<h2 class="promo-text"><?php _e( '
|
75 |
</li>
|
76 |
<li>
|
77 |
<div class="customize-your-timeline"></div>
|
71 |
</li>
|
72 |
<li>
|
73 |
<div class="admin-manage-announcements"></div>
|
74 |
+
<h2 class="promo-text"><?php _e( 'Manage Announcements Easily' , 'timeline-express' ); ?></h2>
|
75 |
</li>
|
76 |
<li>
|
77 |
<div class="customize-your-timeline"></div>
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: eherman24
|
|
3 |
Donate link: http://www.evan-herman.com/contact/?contact-reason=I%20want%20to%20make%20a%20donation%20for%20all%20your%20hard%20work
|
4 |
Tags: vertical, timeline, animated, css3, animations, evan, herman, evan herman, easy, time, line, font awesome, font, awesome, announcements, notifications, simple, events, calendar, scroll, triggered, scrolling, animated, fade, in, fade in
|
5 |
Requires at least: 3.9
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 1.1.
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
Timeline express allows you to create a beautiful vertical animated and responsive timeline of posts , without writing a single line of code. Sweet!
|
@@ -39,12 +39,29 @@ Timeline express comes ready for translation. I would love to get things transla
|
|
39 |
* Chinese (zh_CN) - thanks goes to <a href="http://www.vahichen.com" target="_blank">Vahi Chen</a>
|
40 |
* Portuguese (pt_BR) - thanks goes to <a href="http://toborino.com" target="_blank">Gustavo Magalhães</a>
|
41 |
* Polish (pl_PL) - thanks goes to Kanios
|
42 |
-
* Dutch (nl_NL) - thanks goes to <a href="http://www.kasteelschaesberg.info/wpress/" target="_blank">Kees Hessels</a>
|
43 |
|
44 |
<em>We're always looking for polyglots to help with the translations. If you enjoy this plugin, speak multiple languages and want to contribute please <a href="http://www.evan-herman.com/contact/" target="_blank">contact me</a> about how you can help translate things so users around the world can benefit from this plugin.</em>
|
45 |
|
46 |
**Hooks + Filters**
|
47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
**Alter the 'Read More' button text (New v1.1.3.1)**
|
49 |
|
50 |
Users can now alter the 'Read More' button text using the provided gettext filter and the 'timeline-express' text domain.
|
@@ -228,6 +245,13 @@ Have an idea for a future release feature? I love hearing about new ideas! You c
|
|
228 |
|
229 |
== Changelog ==
|
230 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
231 |
= 1.1.3.2 - December 11th, 2014 =
|
232 |
* Enhancement: Added Dutch language translation (nl_NL) - thanks goes to <a href="http://www.kasteelschaesberg.info/wpress/" target="_blank">Kees Hessels</a>
|
233 |
* Fixed: A few typos throughout the plugin
|
@@ -299,6 +323,13 @@ Have an idea for a future release feature? I love hearing about new ideas! You c
|
|
299 |
|
300 |
== Upgrade Notice ==
|
301 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
302 |
= 1.1.3.2 - December 11th, 2014 =
|
303 |
* Enhancement: Added Dutch language translation (nl_NL) - thanks goes to <a href="http://www.kasteelschaesberg.info/wpress/" target="_blank">Kees Hessels</a>
|
304 |
* Fixed: A few typos throughout the plugin
|
3 |
Donate link: http://www.evan-herman.com/contact/?contact-reason=I%20want%20to%20make%20a%20donation%20for%20all%20your%20hard%20work
|
4 |
Tags: vertical, timeline, animated, css3, animations, evan, herman, evan herman, easy, time, line, font awesome, font, awesome, announcements, notifications, simple, events, calendar, scroll, triggered, scrolling, animated, fade, in, fade in
|
5 |
Requires at least: 3.9
|
6 |
+
Tested up to: 4.1
|
7 |
+
Stable tag: 1.1.4
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
Timeline express allows you to create a beautiful vertical animated and responsive timeline of posts , without writing a single line of code. Sweet!
|
39 |
* Chinese (zh_CN) - thanks goes to <a href="http://www.vahichen.com" target="_blank">Vahi Chen</a>
|
40 |
* Portuguese (pt_BR) - thanks goes to <a href="http://toborino.com" target="_blank">Gustavo Magalhães</a>
|
41 |
* Polish (pl_PL) - thanks goes to Kanios
|
|
|
42 |
|
43 |
<em>We're always looking for polyglots to help with the translations. If you enjoy this plugin, speak multiple languages and want to contribute please <a href="http://www.evan-herman.com/contact/" target="_blank">contact me</a> about how you can help translate things so users around the world can benefit from this plugin.</em>
|
44 |
|
45 |
**Hooks + Filters**
|
46 |
|
47 |
+
**Customize the 'announcement' slug (New v1.1.4)**
|
48 |
+
|
49 |
+
Users can now define their own slug for announcement posts using the provided filter `'timeline-express-slug'`. This alters the URL structure of the announcement, possibly for SEO purposes. You would enter the following code into your active themes functions.php file.
|
50 |
+
|
51 |
+
After you enter the code into the functions.php file, you'll want to refresh your permalinks. You can do so by going to 'Settings > Permalinks' and simply clicking save. That will prevent the 404 page you may see upon altering the slug.
|
52 |
+
|
53 |
+
Example:
|
54 |
+
<code>
|
55 |
+
// alter '/announcement/' to be '/event/'
|
56 |
+
function timeline_express_change_announcement_slug( $slug ) {
|
57 |
+
$slug = 'event';
|
58 |
+
return $slug;
|
59 |
+
}
|
60 |
+
add_filter('timeline-express-slug', 'timeline_express_change_announcement_slug' );
|
61 |
+
</code>
|
62 |
+
|
63 |
+
This example would change the default `/announcement/` slug, to `/event/`.
|
64 |
+
|
65 |
**Alter the 'Read More' button text (New v1.1.3.1)**
|
66 |
|
67 |
Users can now alter the 'Read More' button text using the provided gettext filter and the 'timeline-express' text domain.
|
245 |
|
246 |
== Changelog ==
|
247 |
|
248 |
+
= 1.1.4 - December 24th, 2014 =
|
249 |
+
* Enhancement: Implemented premium support licensing. Any issues that require immediate response, or custom code should purchase a support license.
|
250 |
+
* Enhancement: Added a new filter to customize the announcement slug (possibly for SEO purposes) (timeline-express-slug , check documentation for examples)
|
251 |
+
* Enhancement: Moved settings/support below Timeline Express parent menu item
|
252 |
+
* Fixed: Errors thrown when announcement images aren't set
|
253 |
+
* Fixed: Display error where announcements displayed a different date on the backend vs frontend
|
254 |
+
|
255 |
= 1.1.3.2 - December 11th, 2014 =
|
256 |
* Enhancement: Added Dutch language translation (nl_NL) - thanks goes to <a href="http://www.kasteelschaesberg.info/wpress/" target="_blank">Kees Hessels</a>
|
257 |
* Fixed: A few typos throughout the plugin
|
323 |
|
324 |
== Upgrade Notice ==
|
325 |
|
326 |
+
= 1.1.4 - December 24th, 2014 =
|
327 |
+
* Enhancement: Implemented premium support licensing. Any issues that require immediate response, or custom code should purchase a support license.
|
328 |
+
* Enhancement: Added a new filter to customize the announcement slug (possibly for SEO purposes) (timeline-express-slug , check documentation for examples)
|
329 |
+
* Enhancement: Moved settings/support below Timeline Express parent menu item
|
330 |
+
* Fixed: Errors thrown when announcement images aren't set
|
331 |
+
* Fixed: Display error where announcements displayed a different date on the backend vs frontend
|
332 |
+
|
333 |
= 1.1.3.2 - December 11th, 2014 =
|
334 |
* Enhancement: Added Dutch language translation (nl_NL) - thanks goes to <a href="http://www.kasteelschaesberg.info/wpress/" target="_blank">Kees Hessels</a>
|
335 |
* Fixed: A few typos throughout the plugin
|
timeline-express.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin Name: Timeline Express
|
5 |
Plugin URI: http://www.evan-herman.com
|
6 |
Description: Create a beautiful vertical, CSS3 animated and responsive timeline in minutes flat without writing code.
|
7 |
-
Version: 1.1.
|
8 |
Author: Evan Herman
|
9 |
Author URI: http://www.evan-herman.com
|
10 |
License: GPL2
|
@@ -28,12 +28,16 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
28 |
#_________________________________________________ CONSTANTS
|
29 |
|
30 |
/** Configuration **/
|
31 |
-
if(!defined('TIMELINE_EXPRESS_VERSION_CURRENT')) define('TIMELINE_EXPRESS_VERSION_CURRENT', '1.1.
|
32 |
if(!defined('TIMELINE_EXPRESS_PATH')) define('TIMELINE_EXPRESS_PATH', plugin_dir_path( __FILE__ ));
|
33 |
if(!defined('TIMELINE_EXPRESS_URL')) define('TIMELINE_EXPRESS_URL', plugins_url('timeline-express/'));
|
34 |
if(!defined('TIMELINE_EXPRESS_URL_WP')) define('TIMELINE_EXPRESS_URL_WP', get_bloginfo('url'));
|
35 |
if(!defined('TIMELINE_EXPRESS_URL_WP_ADM')) define('TIMELINE_EXPRESS_URL_WP_ADM', TIMELINE_EXPRESS_URL_WP.'/wp-admin/');
|
36 |
|
|
|
|
|
|
|
|
|
37 |
/** Database Tables **/
|
38 |
if(!defined('TIMELINE_EXPRESS_OPTION')) define('TIMELINE_EXPRESS_OPTION', 'timeline_express_storage');
|
39 |
|
@@ -63,6 +67,10 @@ require_once TIMELINE_EXPRESS_PATH.'lib/lib.ajax.php';
|
|
63 |
$timelineExpressBase = new timelineExpressBase();
|
64 |
|
65 |
/** Activation Hooks **/
|
66 |
-
register_activation_hook(__FILE__, array(&$timelineExpressBase, 'activate'));
|
67 |
-
register_deactivation_hook(__FILE__, array(&$timelineExpressBase, 'deactivate'));
|
68 |
-
register_uninstall_hook(__FILE__, array(
|
|
|
|
|
|
|
|
4 |
Plugin Name: Timeline Express
|
5 |
Plugin URI: http://www.evan-herman.com
|
6 |
Description: Create a beautiful vertical, CSS3 animated and responsive timeline in minutes flat without writing code.
|
7 |
+
Version: 1.1.4
|
8 |
Author: Evan Herman
|
9 |
Author URI: http://www.evan-herman.com
|
10 |
License: GPL2
|
28 |
#_________________________________________________ CONSTANTS
|
29 |
|
30 |
/** Configuration **/
|
31 |
+
if(!defined('TIMELINE_EXPRESS_VERSION_CURRENT')) define('TIMELINE_EXPRESS_VERSION_CURRENT', '1.1.4');
|
32 |
if(!defined('TIMELINE_EXPRESS_PATH')) define('TIMELINE_EXPRESS_PATH', plugin_dir_path( __FILE__ ));
|
33 |
if(!defined('TIMELINE_EXPRESS_URL')) define('TIMELINE_EXPRESS_URL', plugins_url('timeline-express/'));
|
34 |
if(!defined('TIMELINE_EXPRESS_URL_WP')) define('TIMELINE_EXPRESS_URL_WP', get_bloginfo('url'));
|
35 |
if(!defined('TIMELINE_EXPRESS_URL_WP_ADM')) define('TIMELINE_EXPRESS_URL_WP_ADM', TIMELINE_EXPRESS_URL_WP.'/wp-admin/');
|
36 |
|
37 |
+
/* Define Support Constants */
|
38 |
+
if(!defined('EH_DEV_SHOP_URL')) define( 'EH_DEV_SHOP_URL', 'http://www.evan-herman.com' );
|
39 |
+
if(!defined('EH_DEV_SHOP_SUPPORT_PRODUCT_NAME')) define( 'EH_DEV_SHOP_SUPPORT_PRODUCT_NAME', 'timeline-express' );
|
40 |
+
|
41 |
/** Database Tables **/
|
42 |
if(!defined('TIMELINE_EXPRESS_OPTION')) define('TIMELINE_EXPRESS_OPTION', 'timeline_express_storage');
|
43 |
|
67 |
$timelineExpressBase = new timelineExpressBase();
|
68 |
|
69 |
/** Activation Hooks **/
|
70 |
+
register_activation_hook( __FILE__ , array( &$timelineExpressBase, 'activate') );
|
71 |
+
register_deactivation_hook( __FILE__ , array( &$timelineExpressBase, 'deactivate') );
|
72 |
+
// register_uninstall_hook( __FILE__ , array( &$timelineExpressBase, 'uninstall') );
|
73 |
+
|
74 |
+
/* Daily Cron Job to check license */
|
75 |
+
register_activation_hook( __FILE__ , array( &$timelineExpressBase , 'schedule_timeline_express_support_cron' ) );
|
76 |
+
|