Timeline Express - Version 1.2.8.7

Version Description

  • September 18th, 2016 =
  • Fixed bug where 'years' were not displaying properly when using TIMELINE_EXPRESS_YEAR_ICONS.
  • Introduced a new helper function, timeline_express_get_announcement_date_timestamp.
  • Double spaced our helpers.php file for easier reading.
  • Re-factored a few helper functions.
  • Added a new WPML config file (Now 100% compatible with WPML!).
Download this release

Release Info

Developer eherman24
Plugin Icon 128x128 Timeline Express
Version 1.2.8.7
Comparing to
See all releases

Code changes from version 1.2.8.6 to 1.2.8.7

constants.php CHANGED
@@ -14,7 +14,7 @@
14
  * Define the current version of Timeline Express
15
  */
16
  if ( ! defined( 'TIMELINE_EXPRESS_VERSION_CURRENT' ) ) {
17
- define( 'TIMELINE_EXPRESS_VERSION_CURRENT', '1.2.8.6' );
18
  }
19
 
20
  /**
14
  * Define the current version of Timeline Express
15
  */
16
  if ( ! defined( 'TIMELINE_EXPRESS_VERSION_CURRENT' ) ) {
17
+ define( 'TIMELINE_EXPRESS_VERSION_CURRENT', '1.2.8.7' );
18
  }
19
 
20
  /**
lib/admin/css/min/timeline-express-admin.min.css CHANGED
@@ -2,7 +2,7 @@
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
  */
8
  body.admin_page_timeline-express-welcome .slides ul li,body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}.wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;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:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;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;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:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);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;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.delete-no:hover,.delete-yes:hover{cursor:pointer}#cmb2-metabox-timeline_express_ads .cmb2-id-announcement-advertisments{padding:0!important}#cmb2-metabox-timeline_express_ads p.description{margin:10px 0!important}#cmb2-metabox-timeline_express_ads a.button-primary{font-size:15px;height:auto;padding:3px;margin:0;width:100%;text-align:center}#timeline_express_ads{background:0 0;box-shadow:none;border:none}#timeline_express_ads .advertisment-link{display:block;width:100%;height:100%}#timeline_express_ads .button-primary,#timeline_express_ads .handlediv,#timeline_express_ads h2,#timeline_express_ads p.description,label[for=help_docs_metabox-hide],label[for=timeline_express_ads-hide],label[for=announcement_metabox-hide]{display:none!important}#timeline_express_ads .cmb-type-te-advert-metabox,#timeline_express_ads div.inside{margin:0;padding:0}div.cmb2-id-announcement-help-docs{padding-top:0!important;padding-bottom:0!important}#timeline-express-icon{background:url(../../images/timeline-express-logo-128.png) no-repeat;display:block;float:left;padding:0 0 0 .5em;height:90px;width:90px;background-size:contain}.wrap #timeline-express-page-header{margin:0}body.te_announcements_page_timeline-express-settings .wrap .postbox.ui-sortable-handle{border-radius:5px}.settings-header{display:inline-block;width:100%;padding-left:0!important}.timeline-express-settings-header{background:0 0;box-shadow:none;border:none}.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-settings-description{padding-bottom:2em!important;color:#A7A7A7;font-style:italic;font-size:10px}td.column-announcement_date .dashicons-arrow-right{line-height:2.9;display:inline-block;color:rgba(227,26,26,.68)}.delete-no:after{content:" no, save my announcements from being deleted. I'll need them again!"}.delete-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.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}.no-image-used-text{line-height:4.7}.wp-list-table .announcement_color_box{display:block;height:15px;width:15px;border:1px solid rgba(128,128,128,.22);padding:.5em;text-align:center;border-radius:50%}.wp-list-table .past_announcement{height:30px}.wp-list-table .edit-announcement-icon{font-size:25px!important;display:block}.wp-list-table .dashicon-past-announcement{font-size:30px!important;text-align:left}.wp-list-table img.attachment-timeline-express-thumbnail.size-timeline-express-thumbnail{max-width:180px;width:80%;height:auto}.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:-moz-linear-gradient(top,rgba(206,220,231,.7) 0,rgba(89,106,114,.7) 100%);background-image: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 .admin-manage-announcements,body.admin_page_timeline-express-welcome .customize-your-timeline,body.admin_page_timeline-express-welcome .intuitive-post-creation{margin-top:1.5em;background-size:contain;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;background-image:url(../images/welcome/intuitive-creation-screen.jpg);height:665px}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;background-image:url(../images/welcome/Manage-Announcements.jpg);height:665px}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;background-image:url(../images/welcome/customize-your-timeline.jpg);height:665px}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}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;position:absolute;top:0;-webkit-animation-name:anim_slides;-webkit-animation-delay:0;-moz-animation-name:anim_slides;-moz-animation-delay:0}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}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-delay:0;-moz-animation-name:anim_titles;-moz-animation-delay:0}.dashicons-heart{background:linear-gradient(top,#ff8cf7,#e2a5e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}#timeline-express-support-page-wrap{padding: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)}.purchase-support-license{margin-left:-.5em!important}#support-license-form p.description.license-error{color:rgba(225,47,47,.73)}#support-license-form p.description.license-active{color:rgba(46,102,31,.68)}#support-license-form .license-links a{text-decoration:none}.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}}.about-wrap .timeline-express-badge{position:absolute;top:0;right:0;color:#999;font-size:14px;text-align:center;margin:5px 0 0;width:150px}.about-wrap .timeline-express-badge .version{display:block;margin:5px auto 0}.about-wrap .feature-section{padding:45px 0}.about-wrap .feature-section p{font-size:15px}.about-wrap .feature-section.two-col .col{vertical-align:top}.about-wrap .feature-section.two-col .col:nth-child(1){width:calc(65% - 4px)}.about-wrap .feature-section.two-col .col:nth-child(2){width:calc(30% - 4px);text-align:center;float:right}.about-wrap .timeline-express-features-button{font-size:14px;height:auto;padding:5px 15px;margin-top:10px}.about-wrap .feature-section .feature-video,.about-wrap .feature-section img{max-width:400px;width:100%}.about-wrap #timeline-express-addons .intro,.about-wrap #timeline-express-addons h1.page-title{display:none}#timeline-express-addons .timeline-express-clear:after,#timeline-express-addons .timeline-express-clear:before{content:" ";display:table}.about-wrap #timeline-express-addons .timeline-express-addon-item{max-width:100%}#timeline-express-addons .timeline-express-clear:after{clear:both}#timeline-express-addons .intro{margin-bottom:30px}.timeline-express-addons-basic-message{border:1px solid #ddd;padding:20px}.timeline-express-addons-basic-message h5{font-size:16px;font-weight:700;margin:0 0 15px}.timeline-express-addons-basic-message p{margin:0}.timeline-express-addons-unlock{margin:35px 0 25px}.timeline-express-addons-unlock h4{font-size:23px;font-weight:400;margin:0 0 6px;line-height:29px}.timeline-express-addons-unlock p{margin:0}.timeline-express-addon-item{background-color:#fff;border:1px solid #ddd;clear:right;min-height:118px;margin:0 0 18px;position:relative}.timeline-express-addon-image{float:left;height:92px;width:92px;border:1px solid #ddd;margin:12px 0 0 12px}.timeline-express-addon-image img{display:block;margin:0 auto;max-width:100%}.timeline-express-addon-text{margin:0 200px 0 126px;padding:22px 0}.timeline-express-addon-text h4{font-size:16px;font-weight:700;margin:0 0 8px}.timeline-express-addon-text p{margin:0}.timeline-express-addon-action{position:absolute;top:0;right:0;width:180px;height:100%;text-align:center;border-left:1px solid #ddd}.timeline-express-addon-action a,.timeline-express-addon-action button{font-size:14px;color:#fff;background-color:#0085ba;border:1px solid #006d98;text-decoration:none;width:130px;margin:40px auto 0;display:block;border-radius:5px;padding:10px 0;cursor:pointer}.timeline-express-addon-action a:hover,.timeline-express-addon-action button:hover{background-color:#006d98}.timeline-express-addon-status-active .timeline-express-addon-action{background-color:#edfaff}.timeline-express-addon-status-inactive .timeline-express-addon-action{background-color:#f5f6f7}.timeline-express-error{color:#b94a48;background-color:#f2dede;padding:8px}.timeline-express-success{color:#468847;background-color:#dff0d8;padding:8px}.timeline-express-addon-item,.timeline-express-addon-item.timeline-express-second{max-width:800px;width:100%;float:none}.timeline-express-addon-action .button-addon-installed,.timeline-express-addon-action .button-addon-installed:hover{opacity:.8;background:#FFB780;border:1px solid #9B6943;color:#333}
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
7
  */
8
  body.admin_page_timeline-express-welcome .slides ul li,body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}.wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;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:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;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;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:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);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;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.delete-no:hover,.delete-yes:hover{cursor:pointer}#cmb2-metabox-timeline_express_ads .cmb2-id-announcement-advertisments{padding:0!important}#cmb2-metabox-timeline_express_ads p.description{margin:10px 0!important}#cmb2-metabox-timeline_express_ads a.button-primary{font-size:15px;height:auto;padding:3px;margin:0;width:100%;text-align:center}#timeline_express_ads{background:0 0;box-shadow:none;border:none}#timeline_express_ads .advertisment-link{display:block;width:100%;height:100%}#timeline_express_ads .button-primary,#timeline_express_ads .handlediv,#timeline_express_ads h2,#timeline_express_ads p.description,label[for=help_docs_metabox-hide],label[for=timeline_express_ads-hide],label[for=announcement_metabox-hide]{display:none!important}#timeline_express_ads .cmb-type-te-advert-metabox,#timeline_express_ads div.inside{margin:0;padding:0}div.cmb2-id-announcement-help-docs{padding-top:0!important;padding-bottom:0!important}#timeline-express-icon{background:url(../../images/timeline-express-logo-128.png) no-repeat;display:block;float:left;padding:0 0 0 .5em;height:90px;width:90px;background-size:contain}.wrap #timeline-express-page-header{margin:0}body.te_announcements_page_timeline-express-settings .wrap .postbox.ui-sortable-handle{border-radius:5px}.settings-header{display:inline-block;width:100%;padding-left:0!important}.timeline-express-settings-header{background:0 0;box-shadow:none;border:none}.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-settings-description{padding-bottom:2em!important;color:#A7A7A7;font-style:italic;font-size:10px}td.column-announcement_date .dashicons-arrow-right{line-height:2.9;display:inline-block;color:rgba(227,26,26,.68)}.delete-no:after{content:" no, save my announcements from being deleted. I'll need them again!"}.delete-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.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}.no-image-used-text{line-height:4.7}.wp-list-table .announcement_color_box{display:block;height:15px;width:15px;border:1px solid rgba(128,128,128,.22);padding:.5em;text-align:center;border-radius:50%}.wp-list-table .past_announcement{height:30px}.wp-list-table .edit-announcement-icon{font-size:25px!important;display:block}.wp-list-table .dashicon-past-announcement{font-size:30px!important;text-align:left}.wp-list-table img.attachment-timeline-express-thumbnail.size-timeline-express-thumbnail{max-width:180px;width:80%;height:auto}.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:-moz-linear-gradient(top,rgba(206,220,231,.7) 0,rgba(89,106,114,.7) 100%);background-image: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 .admin-manage-announcements,body.admin_page_timeline-express-welcome .customize-your-timeline,body.admin_page_timeline-express-welcome .intuitive-post-creation{margin-top:1.5em;background-size:contain;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;background-image:url(../images/welcome/intuitive-creation-screen.jpg);height:665px}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;background-image:url(../images/welcome/Manage-Announcements.jpg);height:665px}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;background-image:url(../images/welcome/customize-your-timeline.jpg);height:665px}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}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;position:absolute;top:0;-webkit-animation-name:anim_slides;-webkit-animation-delay:0;-moz-animation-name:anim_slides;-moz-animation-delay:0}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}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-delay:0;-moz-animation-name:anim_titles;-moz-animation-delay:0}.dashicons-heart{background:linear-gradient(top,#ff8cf7,#e2a5e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}#timeline-express-support-page-wrap{padding: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)}.purchase-support-license{margin-left:-.5em!important}#support-license-form p.description.license-error{color:rgba(225,47,47,.73)}#support-license-form p.description.license-active{color:rgba(46,102,31,.68)}#support-license-form .license-links a{text-decoration:none}.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}}.about-wrap .timeline-express-badge{position:absolute;top:0;right:0;color:#999;font-size:14px;text-align:center;margin:5px 0 0;width:150px}.about-wrap .timeline-express-badge .version{display:block;margin:5px auto 0}.about-wrap .feature-section{padding:45px 0}.about-wrap .feature-section p{font-size:15px}.about-wrap .feature-section.two-col .col{vertical-align:top}.about-wrap .feature-section.two-col .col:nth-child(1){width:calc(65% - 4px)}.about-wrap .feature-section.two-col .col:nth-child(2){width:calc(30% - 4px);text-align:center;float:right}.about-wrap .timeline-express-features-button{font-size:14px;height:auto;padding:5px 15px;margin-top:10px}.about-wrap .feature-section .feature-video,.about-wrap .feature-section img{max-width:400px;width:100%}.about-wrap #timeline-express-addons .intro,.about-wrap #timeline-express-addons h1.page-title{display:none}#timeline-express-addons .timeline-express-clear:after,#timeline-express-addons .timeline-express-clear:before{content:" ";display:table}.about-wrap #timeline-express-addons .timeline-express-addon-item{max-width:100%}#timeline-express-addons .timeline-express-clear:after{clear:both}#timeline-express-addons .intro{margin-bottom:30px}.timeline-express-addons-basic-message{border:1px solid #ddd;padding:20px}.timeline-express-addons-basic-message h5{font-size:16px;font-weight:700;margin:0 0 15px}.timeline-express-addons-basic-message p{margin:0}.timeline-express-addons-unlock{margin:35px 0 25px}.timeline-express-addons-unlock h4{font-size:23px;font-weight:400;margin:0 0 6px;line-height:29px}.timeline-express-addons-unlock p{margin:0}.timeline-express-addon-item{background-color:#fff;border:1px solid #ddd;clear:right;min-height:118px;margin:0 0 18px;position:relative}.timeline-express-addon-image{float:left;height:92px;width:92px;border:1px solid #ddd;margin:12px 0 0 12px}.timeline-express-addon-image img{display:block;margin:0 auto;max-width:100%}.timeline-express-addon-text{margin:0 200px 0 126px;padding:22px 0}.timeline-express-addon-text h4{font-size:16px;font-weight:700;margin:0 0 8px}.timeline-express-addon-text p{margin:0}.timeline-express-addon-action{position:absolute;top:0;right:0;width:180px;height:100%;text-align:center;border-left:1px solid #ddd}.timeline-express-addon-action a,.timeline-express-addon-action button{font-size:14px;color:#fff;background-color:#0085ba;border:1px solid #006d98;text-decoration:none;width:130px;margin:40px auto 0;display:block;border-radius:5px;padding:10px 0;cursor:pointer}.timeline-express-addon-action a:hover,.timeline-express-addon-action button:hover{background-color:#006d98}.timeline-express-addon-status-active .timeline-express-addon-action{background-color:#edfaff}.timeline-express-addon-status-inactive .timeline-express-addon-action{background-color:#f5f6f7}.timeline-express-error{color:#b94a48;background-color:#f2dede;padding:8px}.timeline-express-success{color:#468847;background-color:#dff0d8;padding:8px}.timeline-express-addon-item,.timeline-express-addon-item.timeline-express-second{max-width:800px;width:100%;float:none}.timeline-express-addon-action .button-addon-installed,.timeline-express-addon-action .button-addon-installed:hover{opacity:.8;background:#FFB780;border:1px solid #9B6943;color:#333}
lib/admin/css/min/timeline-express-settings.min.css CHANGED
@@ -1,78 +1,8 @@
1
- /*
2
- * @Plugin Timeline Express
3
- * @Author Code Parrots
4
- * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
- */
8
- /*
9
- * @Plugin Timeline Express
10
- * @Author Code Parrots
11
- * @Site https://www.wp-timelineexpress.com
12
- * @Version 1.2.8.4
13
- * @Build 09-14-2016
14
- */
15
- /*
16
- * @Plugin Timeline Express
17
- * @Author Code Parrots
18
- * @Site https://www.wp-timelineexpress.com
19
- * @Version 1.2.8.4
20
- * @Build 09-14-2016
21
- */
22
- /*
23
- * @Plugin Timeline Express
24
- * @Author Code Parrots
25
- * @Site https://www.wp-timelineexpress.com
26
- * @Version 1.2.8.4
27
- * @Build 09-12-2016
28
- */
29
- /*
30
- * @Plugin Timeline Express
31
- * @Author Code Parrots
32
- * @Site https://www.wp-timelineexpress.com
33
- * @Version 1.2.8.4
34
- * @Build 09-12-2016
35
- */
36
- /*
37
- * @Plugin Timeline Express
38
- * @Author Code Parrots
39
- * @Site https://www.wp-timelineexpress.com
40
- * @Version 1.2.8.4
41
- * @Build 09-12-2016
42
- */
43
- /*
44
- * @Plugin Timeline Express
45
- * @Author Code Parrots
46
- * @Site https://www.wp-timelineexpress.com
47
- * @Version 1.2.8.4
48
- * @Build 09-12-2016
49
- */
50
- /*
51
- * @Plugin Timeline Express
52
- * @Author Code Parrots
53
- * @Site https://www.wp-timelineexpress.com
54
- * @Version 1.2.8.4
55
- * @Build 09-12-2016
56
- */
57
- /*
58
- * @Plugin Timeline Express
59
- * @Author Code Parrots
60
- * @Site https://www.wp-timelineexpress.com
61
- * @Version 1.2.8.4
62
- * @Build 09-12-2016
63
- */
64
- /*
65
- * @Plugin Timeline Express
66
- * @Author Code Parrots
67
- * @Site https://www.wp-timelineexpress.com
68
- * @Version 1.2.8.4
69
- * @Build 09-12-2016
70
- */
71
  /*
72
  * @Plugin Timeline Express
73
  * @Author Code Parrots
74
  * @Site https://www.wp-timelineexpress.com
75
- * @Version 1.2.8.4
76
- * @Build 08-13-2016
77
  */
78
  .wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;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:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;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;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:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);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;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.delete-no:hover,.delete-yes:hover{cursor:pointer}#timeline-express-icon{background:url(../../images/timeline-express-logo-128.png) no-repeat;display:block;float:left;padding:0 0 0 .5em;height:90px;width:90px;background-size:contain}.wrap #timeline-express-page-header{margin:0}body.te_announcements_page_timeline-express-settings .wrap .postbox.ui-sortable-handle{border-radius:5px}.settings-header{display:inline-block;width:100%}.timeline-express-settings-header{background:0 0;box-shadow:none;border:none}.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-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.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,.wp-list-table .column-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{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;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,th.manage-column.column-announcement_date.sortable.desc{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:-moz-linear-gradient(top,rgba(206,220,231,.7) 0,rgba(89,106,114,.7) 100%);background-image: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 .admin-manage-announcements,body.admin_page_timeline-express-welcome .customize-your-timeline,body.admin_page_timeline-express-welcome .intuitive-post-creation{margin-top:1.5em;background-size:contain;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;background-image:url(../images/welcome/intuitive-creation-screen.jpg);height:665px}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;background-image:url(../images/welcome/Manage-Announcements.jpg);height:665px}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;background-image:url(../images/welcome/customize-your-timeline.jpg);height:665px}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}body.admin_page_timeline-express-welcome .slides ul li,body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{position:absolute;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}@-webkit-keyframes anim_slides{0%,100%,30%{opacity:0}24%,6%{opacity:1}}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;top:0;-webkit-animation-name:anim_slides;-webkit-animation-delay:0;-moz-animation-name:anim_slides;-moz-animation-delay:0}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%,100%,25%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}}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;top:-35px;width:350px;text-align:center;-webkit-animation-name:anim_titles;-webkit-animation-delay:0;-moz-animation-name:anim_titles;-moz-animation-delay:0}.dashicons-heart{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}}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  /*
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
7
  */
8
  .wp-core-ui .timeline-express-red-button{background-color:#9B2124;background-image:linear-gradient(to bottom,#C5292E,#9B2124);border-color:#9B2124 #9B2124 #8D1F21;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:linear-gradient(to bottom,#D22E30,#9B2124);border-color:#7F1C1F;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;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:linear-gradient(to bottom,#9B2124,#B72629);border-color:#601312 #AE2426 #AE2426;color:rgba(255,255,255,.95);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;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.delete-no:hover,.delete-yes:hover{cursor:pointer}#timeline-express-icon{background:url(../../images/timeline-express-logo-128.png) no-repeat;display:block;float:left;padding:0 0 0 .5em;height:90px;width:90px;background-size:contain}.wrap #timeline-express-page-header{margin:0}body.te_announcements_page_timeline-express-settings .wrap .postbox.ui-sortable-handle{border-radius:5px}.settings-header{display:inline-block;width:100%}.timeline-express-settings-header{background:0 0;box-shadow:none;border:none}.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-yes:after{content:" yes, delete all of the announcement posts. they are dead to me."}.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,.wp-list-table .column-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{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;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,th.manage-column.column-announcement_date.sortable.desc{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:-moz-linear-gradient(top,rgba(206,220,231,.7) 0,rgba(89,106,114,.7) 100%);background-image: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 .admin-manage-announcements,body.admin_page_timeline-express-welcome .customize-your-timeline,body.admin_page_timeline-express-welcome .intuitive-post-creation{margin-top:1.5em;background-size:contain;background-position:bottom center;background-repeat:no-repeat}body.admin_page_timeline-express-welcome .intuitive-post-creation{padding-top:3em;background-image:url(../images/welcome/intuitive-creation-screen.jpg);height:665px}body.admin_page_timeline-express-welcome .admin-manage-announcements{padding-top:3em;background-image:url(../images/welcome/Manage-Announcements.jpg);height:665px}body.admin_page_timeline-express-welcome .customize-your-timeline{padding-top:4%;background-image:url(../images/welcome/customize-your-timeline.jpg);height:665px}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}body.admin_page_timeline-express-welcome .slides ul li,body.admin_page_timeline-express-welcome .slides ul li h2.promo-text{position:absolute;-webkit-animation-duration:18s;-webkit-animation-timing-function:linear;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:normal;-webkit-animation-play-state:running;-webkit-animation-fill-mode:forwards;-moz-animation-duration:18s;-moz-animation-timing-function:linear;-moz-animation-iteration-count:infinite;-moz-animation-direction:normal;-moz-animation-play-state:running;-moz-animation-fill-mode:forwards}@-webkit-keyframes anim_slides{0%,100%,30%{opacity:0}24%,6%{opacity:1}}body.admin_page_timeline-express-welcome .slides ul li{width:100%;opacity:0;top:0;-webkit-animation-name:anim_slides;-webkit-animation-delay:0;-moz-animation-name:anim_slides;-moz-animation-delay:0}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%,100%,25%{left:5%;opacity:0}20%,5%{left:5%;opacity:1}}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;top:-35px;width:350px;text-align:center;-webkit-animation-name:anim_titles;-webkit-animation-delay:0;-moz-animation-name:anim_titles;-moz-animation-delay:0}.dashicons-heart{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}}
lib/admin/css/timeline-express-settings.css CHANGED
@@ -582,4 +582,5 @@ body.admin_page_timeline-express-welcome .slides ul li h2.promo-text {
582
  }
583
 
584
  /** End Timeline Express Admin Styles */
585
- /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRpbWVsaW5lLWV4cHJlc3Mtc2V0dGluZ3MuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZDQUE2QztBQUM3QyxzQ0FBc0M7QUFDdEMsNENBQTRDOztBQUU1QyxxQ0FBcUM7QUFDckM7Q0FDQywwQkFBMEI7Q0FNMUIsaUVBQWlFO0NBQ2pFLHNCQUFzQjtDQUN0Qiw2QkFBNkI7Q0FFNUIsZ0RBQWdEO0VBQ2hELFlBQVk7Q0FDYixzQkFBc0I7Q0FDdEIscUNBQXFDO0NBQ3JDLGlCQUFpQjtDQUNqQixZQUFZO0NBQ1osa0JBQWtCO0NBQ2xCOztBQUVEOzs7O0NBSUMsMEJBQTBCO0NBTTFCLGlFQUFpRTtDQUNqRSxzQkFBc0I7Q0FFckIsZ0RBQWdEO0NBQ2pELFlBQVk7Q0FDWixzQ0FBc0M7Q0FDdEM7O0FBRUQ7O0NBRUMsc0JBQXNCO0NBRXRCLDZFQUE2RTtDQUM3RTs7QUFFRDs7OztDQUlDLG9CQUFvQjtDQU1wQixpRUFBaUU7Q0FDakUsOENBQThDO0NBQzlDLDhCQUE4QjtDQUU3QiwwQ0FBMEM7Q0FDM0MscUNBQXFDO0NBQ3JDOztBQUVEOzs7Q0FHQywwQkFBMEI7Q0FDMUIsK0JBQStCO0NBQy9CLGlDQUFpQztDQUVqQyxvQ0FBb0M7Q0FDcEMsaURBQWlEO0NBQ2pELGdCQUFnQjtDQUNoQjs7QUFFRDs7R0FFQzs7QUFsQkQ7Q0FxQkMsc0JBQUE7Q0FuQkE7O0FBRUQ7Q0FxQkMsMEJBQUE7Q0FuQkE7O0FBRUQ7Q0FxQkMsZ0JBQUE7Q0FuQkEsYUFBQTtDQUNBLGFBQUE7Q0FDRCxVQUFBO0NBQ0MsWUFBWTtDQUNiLG1CQUFBO0NBQ0E7O0FBRUE7Q0FDQyx3QkFBd0I7Q0FDekIsaUJBQUE7Q0FDQyxhQUFBO0NBQ0E7O0FBRUQ7Q0FDQyxlQUFBO0NBQ0QsWUFBQTtDQUNDLGFBQWE7Q0FDZDs7QUFFQTs7OztDQUlBLHlCQUFBO0NBQ0E7O0FBRUE7O0NBRUEsVUFBQTtDQUNBLFdBQUE7Q0FDQzs7QUFFRDtDQUNBLDBCQUFBO0NBQ0MsNkJBQUE7Q0FD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LCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXHRUaW1lbGluZSBFeHByZXNzIFNldHRpbmdzIFN0eWxlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogUmVkIEJ1dHRvbiBTdHlsZSAtIFNldHRpbmdzIFBhZ2UqL1xuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICM5QjIxMjQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oI0M1MjkyRSksIHRvKCM5QjIxMjQpKTtcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjQzUyOTJFLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjQzUyOTJFLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjQzUyOTJFLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgICAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjQzUyOTJFLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjQzUyOTJFLCAjOUIyMTI0KTtcblx0Ym9yZGVyLWNvbG9yOiAjOUIyMTI0O1xuXHRib3JkZXItYm90dG9tLWNvbG9yOiAjOEQxRjIxO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgxMjAsMjAwLDIzMCwwLjUpO1xuIFx0Ym94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDEyMCwyMDAsMjMwLDAuNSk7XG4gXHRjb2xvcjogI2ZmZjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDAsMCwwLDAuMSk7XG5cdG1hcmdpbi1sZWZ0OiAyZW07XG5cdHdpZHRoOjE1MHB4O1xuXHR0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbi5ob3Zlcixcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b246aG92ZXIsXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uLmZvY3VzLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbjpmb2N1cyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNCNzI2Mjk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oI0QyMkUzMCksIHRvKCM5QjIxMjQpKTtcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjRDIyRTMwLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjRDIyRTMwLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjRDIyRTMwLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgICAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjRDIyRTMwLCAjOUIyMTI0KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjRDIyRTMwLCAjOUIyMTI0KTtcblx0Ym9yZGVyLWNvbG9yOiAjN0YxQzFGO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgxMjAsMjAwLDIzMCwwLjYpO1xuIFx0Ym94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDEyMCwyMDAsMjMwLDAuNik7XG5cdGNvbG9yOiAjZmZmO1xuXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLDAsMCwwLjMpO1xufVxuXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uLmZvY3VzLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbjpmb2N1cyB7XG5cdGJvcmRlci1jb2xvcjogIzUwMEYwRTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMTIwLDIwMCwyMzAsMC42KSwgMXB4IDFweCAycHggcmdiYSgwLDAsMCwwLjQpO1xuXHRib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMTIwLDIwMCwyMzAsMC42KSwgMXB4IDFweCAycHggcmdiYSgwLDAsMCwwLjQpO1xufVxuXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uLmFjdGl2ZSxcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b24uYWN0aXZlOmhvdmVyLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbi5hY3RpdmU6Zm9jdXMsXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uOmFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6ICM3RjFDMUY7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oIzlCMjEyNCksIHRvKCNCNzI2MjkpKTtcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjOUIyMTI0LCAjQjcyNjI5KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjOUIyMTI0LCAjQjcyNjI5KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjOUIyMTI0LCAjQjcyNjI5KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICAgICAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjOUIyMTI0LCAjQjcyNjI5KTtcblx0YmFja2dyb3VuZC1pbWFnZTogICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjOUIyMTI0LCAjQjcyNjI5KTtcblx0Ym9yZGVyLWNvbG9yOiAjNjAxMzEyICNBRTI0MjYgI0FFMjQyNiAjQUUyNDI2O1xuXHRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjk1KTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsMC4xKTtcbiBcdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgwLDAsMCwwLjEpO1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDAsMCwwLDAuMSk7XG59XG5cbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b25bZGlzYWJsZWRdLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbjpkaXNhYmxlZCxcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b24tZGlzYWJsZWQge1xuXHRjb2xvcjogI0U3OTQ5NiAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiAjQkEyOTJCICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1jb2xvcjogIzdGMUMxRiAhaW1wb3J0YW50O1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogICAgICAgICBub25lICFpbXBvcnRhbnQ7XG5cdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsMCwwLDAuMSkgIWltcG9ydGFudDtcblx0Y3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKiBJY29uICovXG4jdGltZWxpbmUtZXhwcmVzcy1pY29uIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWFnZXMvdGltZWxpbmUtZXhwcmVzcy1sb2dvLTEyOC5wbmcnKSBuby1yZXBlYXQgMCAwO1xuXHRkaXNwbGF5OmJsb2NrO1xuXHRmbG9hdDpsZWZ0O1xuXHRwYWRkaW5nOiAwIDAgMCAuNWVtO1xuXHRoZWlnaHQ6ICAxMjhweDtcblx0d2lkdGg6IDEyOHB4O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbi8qIFNldHRpbmdzIFBhZ2UgSGVhZGVyICovXG4ud3JhcCAjdGltZWxpbmUtZXhwcmVzcy1wYWdlLWhlYWRlciB7XG5cdHBhZGRpbmctdG9wOjA7XG5cdG1hcmdpbjogMWVtIDAgMCAwO1xuXHRmb250LXNpemU6IDI1cHg7XG5cdGxpbmUtaGVpZ2h0OiAzO1xufVxuXG4ud3JhcCAubmF2LXRhYi13cmFwcGVyIHtcblx0cGFkZGluZy10b3A6Mi41ZW07XG59XG5cbi53cmFwIC5hY2NvdW50LW5hdi10YWIge1xuXHRwYWRkaW5nLXRvcDowO1xufVxuXG4ucmFuZG9tLWxlbmd0aC10ZXh0IHtcblx0b3BhY2l0eTogLjU7XG59XG5cbiN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgLmZhLXBheXBhbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1zaXplOiAxNnB4O1xuXHRwYWRkaW5nLXRvcDogNHB4O1xuXHRtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuXHRjb2xvcjogIzI1M2I4MDtcbn1cblxuLyogU2V0dGluZ3MgUGFnZSBUb3AgQ29udGFpbmVyICovXG4vKiBIb3VzZXMgbGlua3MgdG8gbGVhdmUgdXMgYSByZXZpZXcsIGxpbmtzIHRvIEV2YW4gSGVybWFuJ3MgV2Vic2l0ZSBldGMuICovXG4ud3JhcCAjdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIHtcblx0cGFkZGluZzouNWVtO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi10b3A6IC43NWVtO1xufVxuXG4jdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIHtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG59XG5cdFxuI3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciBhLCAjdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIGE6aG92ZXIge1xuXHRjb2xvcjogIzMzMztcbn1cblx0I3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciBkaXYsICN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgc3BhbiwgI3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciAudGltZWxpbmVfZXhwcmVzc19oZWFkZXJfbG9nbyB7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHRtYXJnaW46IDAgLjVlbTtcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0fVxuXHRcdCN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgZGl2LmRhc2hpY29ucyB7XG5cdFx0XHRtYXJnaW46IDAgNXB4O1xuXHRcdH1cblx0XHQjdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIGRpdi5kYXNoaWNvbnMtcGx1cy1hbHQge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdGNvbG9yOiByZ2IoMTYzLCAxOTUsIDE4NCk7XG5cdFx0fVxuXHRcdFxuLnRpbWVsaW5lLWV4cHJlc3MtZm9ybSB7XG5cdG1hcmdpbi1ib3R0b206IDNlbTtcbn1cblxuXHQudGltZWxpbmUtZXhwcmVzcy1mb3JtIHRoIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXG4udGltZWxpbmUtZXhwcmVzcy1zZXR0aW5ncy1kZXNjcmlwdGlvbiB7XG5cdHBhZGRpbmctYm90dG9tOiAyZW0gIWltcG9ydGFudDtcblx0Y29sb3I6ICNBN0E3QTc7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Zm9udC1zaXplOiAxMHB4O1xufVxuXHRcblxuLndwLWFkbWluIC5hY3RpdmUtcGFyZW50LWJ1dHRvbiwgLndwLWFkbWluIC5hY3RpdmUtcGFyZW50LWJ1dHRvbjpob3ZlciAge1xuXHRjb2xvcjogcmVkO1xufVxuXG4uZGVsZXRlLW5vOmFmdGVyIHtcblx0Y29udGVudDogXCIgbm8sIHNhdmUgbXkgYW5ub3VuY2VtZW50cyBmcm9tIGJlaW5nIGRlbGV0ZWQuIEknbGwgbmVlZCB0aGVtIGFnYWluIVwiXG59XG4uZGVsZXRlLW5vOmhvdmVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuLmRlbGV0ZS15ZXM6YWZ0ZXIge1xuXHRjb250ZW50OiBcIiB5ZXMsIGRlbGV0ZSBhbGwgb2YgdGhlIGFubm91bmNlbWVudCBwb3N0cy4gdGhleSBhcmUgZGVhZCB0byBtZS5cIlxufVxuLmRlbGV0ZS15ZXM6aG92ZXIge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qKiBDb2xvciBQaWNrZXIgKiovXG4ud3AtcGlja2VyLWhvbGRlciB7XG5cdHBvc2l0aW9uOmFic29sdXRlO1xuXHR6LWluZGV4OiA5OTk5OTk5OTtcbn1cblxuLyogTm8gZXZlbnRzIG1lc3NhZ2Ugd3BfZWRpdG9yICovXG4jbm8tZXZlbnRzLW1lc3NhZ2VfaWZyIHtcblx0bWF4LWhlaWdodDogMTAwcHg7XG59XG5cbi8qIE5vIEV2ZW50cyBGb3VuZCBJbiBUYWJsZSAtIHRleHQgKi9cbi53cC1saXN0LXRhYmxlIC5uby1pdGVtcyAuY29sc3BhbmNoYW5nZSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0aGVpZ2h0OiAxMTVweDtcblx0bGluZS1oZWlnaHQ6IDg7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogQ29sdW1uIFdpZHRocyAqL1xuLndwLWxpc3QtdGFibGUgI2NvbG9yLCAud3AtbGlzdC10YWJsZSAjaWNvbiB7XG5cdHdpZHRoOiA2NXB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4ud3AtbGlzdC10YWJsZSAjYW5ub3VuY2VtZW50X2RhdGUsIC53cC1saXN0LXRhYmxlIC5jb2x1bW4tYW5ub3VuY2VtZW50X2RhdGUge1xuXHR3aWR0aDogMjE1cHg7XG59XG5cbi53cC1saXN0LXRhYmxlICNpbWFnZSwgLndwLWxpc3QtdGFibGUgLmNvbHVtbi1pbWFnZSB7XG5cdHdpZHRoOiAyNTBweDtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cbi5uby1pbWFnZS11c2VkLXRleHQge1xuXHRsaW5lLWhlaWdodDogNC43XG59XG5cbi53cC1saXN0LXRhYmxlICNwYXN0X2Fubm91bmNlbWVudCB7XG5cdHdpZHRoOiAxNTBweDtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cbi8qIEVkaXQgVGltZWxpbmUgRXhwcmVzcyBBbm5vdW5jZW1lbnQgU3R5bGVzICovXG5cblx0LyogQW5ub3VuY2VtZW50IENvbG9yIEJveCAqL1xuXHQud3AtbGlzdC10YWJsZSAuYW5ub3VuY2VtZW50X2NvbG9yX2JveCB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHR3aWR0aDogMTVweDtcblx0XHRoZWlnaHQ6IDE1cHg7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjIyKTtcblx0XHRwYWRkaW5nOiAuNWVtO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRtYXJnaW4tdG9wOiAxMXB4O1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlO1xuXHRcdC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0fVxuXHQvKiBBbm5vdW5jZW1lbnQgSWNvbiAqL1xuXHQud3AtbGlzdC10YWJsZSAuZWRpdC1hbm5vdW5jZW1lbnQtaWNvbiB7XG5cdFx0Zm9udC1zaXplOiAyNXB4ICFpbXBvcnRhbnQ7XG5cdFx0bGluZS1oZWlnaHQ6IDIuNSAhaW1wb3J0YW50O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXHQvKiBBbm5vdW5jZW1lbnQgRGF0ZSAqL1xuXHQud3AtbGlzdC10YWJsZSAjYW5ub3VuY2VtZW50X2RhdGUsIFxuXHR0aC5tYW5hZ2UtY29sdW1uLmNvbHVtbi1hbm5vdW5jZW1lbnRfZGF0ZS5zb3J0YWJsZS5kZXNjIHtcblx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdHBhZGRpbmctbGVmdDogMi41ZW07XG5cdH1cblx0LndwLWxpc3QtdGFibGUgLmFubm91bmNlbWVudF9kYXRlIHtcblx0XHRsaW5lLWhlaWdodDogNC41ICFpbXBvcnRhbnQ7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC8qIFBhc3QgQW5ub3VuY2VtZW50IEljb24gKi9cblx0LndwLWxpc3QtdGFibGUgLmRhc2hpY29uLXBhc3QtYW5ub3VuY2VtZW50IHtcblx0XHRmb250LXNpemU6IDMwcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMi4xICFpbXBvcnRhbnQ7XG5cdH1cblxuLyoqIEFkbWluIEJyZWFrIFBvaW50cyAqKi9cblxuLmRhc2hpY29ucy1zdGFyLWZpbGxlZCB7Y29sb3I6I0ZFQkUxMjt9XG5cbiN0aW1lbGluZV9leHByZXNzX3Jlc2V0X3BsdWdpbl9zZXR0aW5ncyAuZGFzaGljb25zLWRpc21pc3Mge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLXRvcDogLjVlbTtcblx0cGFkZGluZzogLjVlbSAxZW0gMWVtIC41ZW07XG5cdGNvbG9yOiByZ2IoMjQxLCA4MywgODMpO1xufVxuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbipcbipcdFRpbWVsaW5lIEV4cHJlc3MgV2VsY29tZSBQYWdlIFN0eWxlc1xuKlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnRpbWVsaW5lLWV4cHJlc3MtaW1hZ2Uge1xuXHRcbmJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyMDYsMjIwLDIzMSwuNykgMCUsIHJnYmEoODksMTA2LDExNCwuNykgMTAwJSk7XG5iYWNrZ3JvdW5kLWltYWdlOiB1cmwoICcuLi9pbWFnZXMvd2VsY29tZS9iYWNrZ3JvdW5kLnBuZycgKTtcbn1cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnRpbWVsaW5lLXNjcmVlbnNob3Qge1xuXHRwYWRkaW5nOiAxLjVlbTtcblx0cGFkZGluZy1ib3R0b206IDA7XG59XG5cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLmZvbnQtYXdlc29tZS1iYWNrZ3JvdW5kIHtcblx0cGFkZGluZy10b3A6M2VtO1xuXHRtYXJnaW4tdG9wOjEuNWVtO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICcuLi9pbWFnZXMvd2VsY29tZS9Gb250LUF3ZXNvbWUtQ2hlYXRzaGVldC5wbmcnICk7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdGhlaWdodDoyNTBweDtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdGxpbmUtaGVpZ2h0OiA4O1xufVxuXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5pbnR1aXRpdmUtcG9zdC1jcmVhdGlvbiB7XG5cdHBhZGRpbmctdG9wOjNlbTtcblx0bWFyZ2luLXRvcDoxLjVlbTtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCAnLi4vaW1hZ2VzL3dlbGNvbWUvaW50dWl0aXZlLWNyZWF0aW9uLXNjcmVlbi5qcGcnICk7XG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0aGVpZ2h0OjY2NXB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5hZG1pbi1tYW5hZ2UtYW5ub3VuY2VtZW50cyB7XG5cdHBhZGRpbmctdG9wOjNlbTtcblx0bWFyZ2luLXRvcDoxLjVlbTtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCAnLi4vaW1hZ2VzL3dlbGNvbWUvTWFuYWdlLUFubm91bmNlbWVudHMuanBnJyApO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGhlaWdodDo2NjVweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuY3VzdG9taXplLXlvdXItdGltZWxpbmUge1xuXHRwYWRkaW5nLXRvcDo0JTtcblx0bWFyZ2luLXRvcDoxLjVlbTtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCAnLi4vaW1hZ2VzL3dlbGNvbWUvY3VzdG9taXplLXlvdXItdGltZWxpbmUuanBnJyApO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGhlaWdodDo2NjVweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLyogZmFkZSBzbGlkZXIgKi9cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB7XG4gICAgaGVpZ2h0OjY2NXB4O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB3aWR0aDoxMDAlO1xuXHRwYWRkaW5nOiA0JSAwIDQlIDA7XG59XG5cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG4vKiBrZXlmcmFtZXMgI2FuaW1fc2xpZGVzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbV9zbGlkZXMge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICA2JSB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMjQlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgICAzMCUge1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGFuaW1fc2xpZGVzIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgNiUge1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDI0JSB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMzAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbn1cblxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuc2xpZGVzIHVsIGxpIHtcblx0d2lkdGg6IDEwMCU7XG5cdFxuICAgIG9wYWNpdHk6MDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcblxuICAgIC8qIGNzczMgYW5pbWF0aW9uICovXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYW5pbV9zbGlkZXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDE4LjBzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXG4gICAgLW1vei1hbmltYXRpb24tbmFtZTogYW5pbV9zbGlkZXM7XG4gICAgLW1vei1hbmltYXRpb24tZHVyYXRpb246IDE4LjBzO1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC1tb3otYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLW1vei1hbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6IDA7XG4gICAgLW1vei1hbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuXG4vKiBjc3MzIGRlbGF5cyAqL1xuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuc2xpZGVzIHVsICBsaTpudGgtY2hpbGQoMiksIGJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCAgbGk6bnRoLWNoaWxkKDIpIGgyLnByb21vLXRleHQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiA2LjBzO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OiA2LjBzO1xufVxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuc2xpZGVzIHVsICBsaTpudGgtY2hpbGQoMyksIGJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCAgbGk6bnRoLWNoaWxkKDMpIGgyLnByb21vLXRleHQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAxMi4wcztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheTogMTIuMHM7XG59XG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5zbGlkZXMgdWwgbGkgaW1nIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xufVxuXG4vKiBrZXlmcmFtZXMgI2FuaW1fdGl0bGVzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbV90aXRsZXMge1xuICAgIDAlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICA1JSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMjAlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgICAyNSUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGFuaW1fdGl0bGVzIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgNSUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDIwJSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMjUlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbn1cblxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuc2xpZGVzIHVsIGxpIGgyLnByb21vLXRleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IzAwMDAwMDtcbiAgICBib3JkZXItcmFkaXVzOjEwcHggMTBweCAxMHB4IDEwcHg7XG4gICAgYm94LXNoYWRvdzowIDAgM3B4ICNGRkZGRkYgaW5zZXQ7XG4gICAgY29sb3I6I0ZGRkZGRjtcbiAgICBmb250LXNpemU6MThweDtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBhZGRpbmc6MTBweDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6LTM1cHg7XG4gICAgd2lkdGg6MzUwcHg7XG5cdHRleHQtYWxpZ246Y2VudGVyO1xuXG4gICAgLyogY3NzMyBhbmltYXRpb24gKi9cbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltX3RpdGxlcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMTguMHM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG5cbiAgICAtbW96LWFuaW1hdGlvbi1uYW1lOiBhbmltX3RpdGxlcztcbiAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogMTguMHM7XG4gICAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLW1vei1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAtbW96LWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheTogMDtcbiAgICAtbW96LWFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xuICAgIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cblxuLmRhc2hpY29ucy1oZWFydCB7XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmOGNmNywgI2UyYTVlMCk7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICNmZjhjZjcsICNlMmE1ZTApO1xuXHQtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcblx0LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5cbi8qIFZlcnNpb24gMS4xLjQgLCBzdXBwb3J0IHBhZ2Ugc3R5bGVzICovXG4jdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2Utd3JhcCB7XG5cdHBhZGRpbmc6IDJlbTtcbn1cblxuLnRlX2Fubm91bmNlbWVudHNfcGFnZV90aW1lbGluZS1leHByZXNzLXNldHRpbmdzIC53cmFwIHtcblx0cGFkZGluZzogMCAyZW07XG59XG5cbiN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS13cmFwIGhyIHtcblx0bWFyZ2luOiAxLjVlbSAwO1xufVxuXG4jdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2UtaGVhZGVyIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogMTAwJTtcbn1cblxuI3RpbWVsaW5lLWV4cHJlc3Mtc3VwcG9ydC1wYWdlLWhlYWRlciBpbWcudGUtbG9nbyB7XG5cdG1heC13aWR0aDogMTI4cHg7XG5cdG1pbi13aWR0aDogOTBweDtcblx0d2lkdGg6IDIwJTtcblx0ZmxvYXQ6IGxlZnQ7XG59XG5cbiN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS1oZWFkZXIgLnN1cHBvcnQtc3ViaGVhZCAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAyZW0gMCAwIDFlbTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiA0NCU7XG59XG5cbiN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS13cmFwICN0aW1lbGluZV9leHByZXNzX2xpY2Vuc2Vfa2V5IHtcblx0d2lkdGg6IDI1JTtcblx0bWluLXdpZHRoOiA0MDBweDtcbn1cblxuLyogVmFsaWQgbGljZW5zZSBDaGVjayBtYXJrICovXG4udGltZWxpbmUtZXhwcmVzcy12YWxpZC1saWNlbnNlIHtcblx0Y29sb3I6IHJnYmEoMTQ0LCAyMTQsIDEyNSwgMC42OCk7XG5cdGZvbnQtc2l6ZTogMjhweDtcbn1cblxuLyogUHVyY2hhc2Ugc3VwcG9ydCBsaWNlbnNlIGJ1dHRvbiAqL1xuLnB1cmNoYXNlLXN1cHBvcnQtbGljZW5zZSB7XG5cdG1hcmdpbi1sZWZ0OiAtLjVlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBUaW1lbGluZSBFeHByZXNzIFN1cHBvcnQgTGljZW5zZSBGb3JtcyBQYWdlICovXG4udGltZWxpbmUtZXhwcmVzcy1saWNlbnNlLWJ1dHRvbnMge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi10b3A6IDJlbTtcbn1cblxuLyogSW52YWxpZCBMaWNlbnNlIEVycm9yICovXG4udGltZWxpbmUtZXhwcmVzcy1pbnZhbGlkLWxpY2Vuc2UtZXJyb3Ige1xuXHRjb2xvcjogcmdiYSgyMjUsIDQ3LCA0NywgMC43Myk7XG59XG5cbi8qIFByZW1pdW0gU3VwcG9ydCBDb250YWN0IEZvcm0gKi9cbiNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiAzMyU7XG5cdG1pbi13aWR0aDogMzAwcHg7XG59XG5cdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0ge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gaW5wdXQsICNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gdGV4dGFyZWEsICNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gbGFiZWwge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gdGV4dGFyZWEge1xuXHRcdHJlc2l6ZTogdmVydGljYWw7XG5cdH1cblx0I3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0gZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCAjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIGxhYmVsIHtcblx0XHRtYXJnaW4tdG9wOiAxZW07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuLyogTGljZW5zZSBFeHBpcmluZyBTb29uIE1lc3NhZ2UgKi9cbi5saWNlbnNlLWV4cGlyaW5nLXNvb24ge1xuXHRmb250LXNpemU6IDExcHg7XG5cdGNvbG9yOiByZ2IoMjQzLCA3NSwgNzUpO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblx0XG5cdFxuLyogQnJlYWsgUG9pbnRzICovXHRcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA4MXB4KSB7XG5cdFx0I3RpbWVsaW5lX2V4cHJlc3NfbGljZW5zZV9rZXkge1xuXHRcdFx0bWluLXdpZHRoOiA5MCUgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiA5MCUgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0I3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0gZm9ybSBpbnB1dCwgI3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0gZm9ybSB0ZXh0YXJlYSwgI3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0gZm9ybSBsYWJlbCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0I3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0ge1xuXHRcdFx0bWFyZ2luOiAyZW0gMCAwIDA7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0XHQjdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2Utd3JhcCB0YWJsZS53aWRlZmF0LmZpeGVkIHtcblx0XHRcdG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQjdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2UtaGVhZGVyIC5zdXBwb3J0LXN1YmhlYWQge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXHRcdCN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS1oZWFkZXIgLnRlLWxvZ28ge1xuXHRcdFx0bWluLXdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuXHRcdFx0ZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXHRcdCN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS1oZWFkZXIgLnN1cHBvcnQtc3ViaGVhZCBoMSB7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdH1cdFxufVx0XG5cbi8qKiBFbmQgVGltZWxpbmUgRXhwcmVzcyBBZG1pbiBTdHlsZXMgKi8iXX0= */
 
582
  }
583
 
584
  /** End Timeline Express Admin Styles */
585
+
586
+ /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRpbWVsaW5lLWV4cHJlc3Mtc2V0dGluZ3MuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZDQUE2QztBQUM3QyxzQ0FBc0M7QUFDdEMsNENBQTRDOztBQUU1QyxxQ0FBcUM7QUFDckM7Q0FDQywwQkFBMEI7Q0FNMUIsaUVBQWlFO0NBQ2pFLHNCQUFzQjtDQUN0Qiw2QkFBNkI7Q0FFNUIsZ0RBQWdEO0VBQ2hELFlBQVk7Q0FDYixzQkFBc0I7Q0FDdEIscUNBQXFDO0NBQ3JDLGlCQUFpQjtDQUNqQixZQUFZO0NBQ1osa0JBQWtCO0NBQ2xCOztBQUVEOzs7O0NBSUMsMEJBQTBCO0NBTTFCLGlFQUFpRTtDQUNqRSxzQkFBc0I7Q0FFckIsZ0RBQWdEO0NBQ2pELFlBQVk7Q0FDWixzQ0FBc0M7Q0FDdEM7O0FBRUQ7O0NBRUMsc0JBQXNCO0NBRXRCLDZFQUE2RTtDQUM3RTs7QUFFRDs7OztDQUlDLG9CQUFvQjtDQU1wQixpRUFBaUU7Q0FDakUsOENBQThDO0NBQzlDLDhCQUE4QjtDQUU3QiwwQ0FBMEM7Q0FDM0MscUNBQXFDO0NBQ3JDOztBQUVEOzs7Q0FHQywwQkFBMEI7Q0FDMUIsK0JBQStCO0NBQy9CLGlDQUFpQztDQUVqQyxvQ0FBb0M7Q0FDcEMsaURBQWlEO0NBQ2pELGdCQUFnQjtDQUNoQjs7QUFFRDs7R0FFQzs7QUFsQkQ7Q0FxQkMsc0JBQUE7Q0FuQkE7O0FBRUQ7Q0FxQkMsMEJBQUE7Q0FuQkE7O0FBRUQ7Q0FxQkMsZ0JBQUE7Q0FuQkEsYUFBQTtDQUNBLGFBQUE7Q0FDRCxVQUFBO0NBQ0MsWUFBWTtDQUNiLG1CQUFBO0NBQ0E7O0FBRUE7Q0FDQyx3QkFBd0I7Q0FDekIsaUJBQUE7Q0FDQyxhQUFBO0NBQ0E7O0FBRUQ7Q0FDQyxlQUFBO0NBQ0QsWUFBQTtDQUNDLGFBQWE7Q0FDZDs7QUFFQTs7OztDQUlBLHlCQUFBO0NBQ0E7O0FBRUE7O0NBRUEsVUFBQTtDQUNBLFdBQUE7Q0FDQzs7QUFFRDtDQUNBLDBCQUFBO0NBQ0MsNkJBQUE7Q0FD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QUNEO0VBdENDO0dBd0NDLGlCQUFlO0dBQ2Y7Q0F0Q0Y7O0FBRUQsd0NBdUNFIiwiZmlsZSI6InRpbWVsaW5lLWV4cHJlc3Mtc2V0dGluZ3MuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlx0VGltZWxpbmUgRXhwcmVzcyBTZXR0aW5ncyBTdHlsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFJlZCBCdXR0b24gU3R5bGUgLSBTZXR0aW5ncyBQYWdlKi9cbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjOUIyMTI0O1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNDNTI5MkUpLCB0bygjOUIyMTI0KSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI0M1MjkyRSwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI0M1MjkyRSwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI0M1MjkyRSwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI0M1MjkyRSwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0M1MjkyRSwgIzlCMjEyNCk7XG5cdGJvcmRlci1jb2xvcjogIzlCMjEyNDtcblx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogIzhEMUYyMTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMTIwLDIwMCwyMzAsMC41KTtcbiBcdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgxMjAsMjAwLDIzMCwwLjUpO1xuIFx0Y29sb3I6ICNmZmY7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgwLDAsMCwwLjEpO1xuXHRtYXJnaW4tbGVmdDogMmVtO1xuXHR3aWR0aDoxNTBweDtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b24uaG92ZXIsXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uOmhvdmVyLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbi5mb2N1cyxcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b246Zm9jdXMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjQjcyNjI5O1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNEMjJFMzApLCB0bygjOUIyMTI0KSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI0QyMkUzMCwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI0QyMkUzMCwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI0QyMkUzMCwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI0QyMkUzMCwgIzlCMjEyNCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0QyMkUzMCwgIzlCMjEyNCk7XG5cdGJvcmRlci1jb2xvcjogIzdGMUMxRjtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMTIwLDIwMCwyMzAsMC42KTtcbiBcdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgxMjAsMjAwLDIzMCwwLjYpO1xuXHRjb2xvcjogI2ZmZjtcblx0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbi5mb2N1cyxcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b246Zm9jdXMge1xuXHRib3JkZXItY29sb3I6ICM1MDBGMEU7XG5cdC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDEyMCwyMDAsMjMwLDAuNiksIDFweCAxcHggMnB4IHJnYmEoMCwwLDAsMC40KTtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDEyMCwyMDAsMjMwLDAuNiksIDFweCAxcHggMnB4IHJnYmEoMCwwLDAsMC40KTtcbn1cblxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbi5hY3RpdmUsXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uLmFjdGl2ZTpob3Zlcixcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b24uYWN0aXZlOmZvY3VzLFxuLndwLWNvcmUtdWkgLnRpbWVsaW5lLWV4cHJlc3MtcmVkLWJ1dHRvbjphY3RpdmUge1xuXHRiYWNrZ3JvdW5kOiAjN0YxQzFGO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCM5QjIxMjQpLCB0bygjQjcyNjI5KSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzlCMjEyNCwgI0I3MjYyOSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzlCMjEyNCwgI0I3MjYyOSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzlCMjEyNCwgI0I3MjYyOSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzlCMjEyNCwgI0I3MjYyOSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzlCMjEyNCwgI0I3MjYyOSk7XG5cdGJvcmRlci1jb2xvcjogIzYwMTMxMiAjQUUyNDI2ICNBRTI0MjYgI0FFMjQyNjtcblx0Y29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45NSk7XG5cdC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLDAuMSk7XG4gXHRib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsMC4xKTtcblx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgwLDAsMCwwLjEpO1xufVxuXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uW2Rpc2FibGVkXSxcbi53cC1jb3JlLXVpIC50aW1lbGluZS1leHByZXNzLXJlZC1idXR0b246ZGlzYWJsZWQsXG4ud3AtY29yZS11aSAudGltZWxpbmUtZXhwcmVzcy1yZWQtYnV0dG9uLWRpc2FibGVkIHtcblx0Y29sb3I6ICNFNzk0OTYgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogI0JBMjkyQiAhaW1wb3J0YW50O1xuXHRib3JkZXItY29sb3I6ICM3RjFDMUYgIWltcG9ydGFudDtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6ICAgICAgICAgbm9uZSAhaW1wb3J0YW50O1xuXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLDAsMCwwLjEpICFpbXBvcnRhbnQ7XG5cdGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogSWNvbiAqL1xuI3RpbWVsaW5lLWV4cHJlc3MtaWNvbiB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1hZ2VzL3RpbWVsaW5lLWV4cHJlc3MtbG9nby0xMjgucG5nJykgbm8tcmVwZWF0IDAgMDtcblx0ZGlzcGxheTpibG9jaztcblx0ZmxvYXQ6bGVmdDtcblx0cGFkZGluZzogMCAwIDAgLjVlbTtcblx0aGVpZ2h0OiAgMTI4cHg7XG5cdHdpZHRoOiAxMjhweDtcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4vKiBTZXR0aW5ncyBQYWdlIEhlYWRlciAqL1xuLndyYXAgI3RpbWVsaW5lLWV4cHJlc3MtcGFnZS1oZWFkZXIge1xuXHRwYWRkaW5nLXRvcDowO1xuXHRtYXJnaW46IDFlbSAwIDAgMDtcblx0Zm9udC1zaXplOiAyNXB4O1xuXHRsaW5lLWhlaWdodDogMztcbn1cblxuLndyYXAgLm5hdi10YWItd3JhcHBlciB7XG5cdHBhZGRpbmctdG9wOjIuNWVtO1xufVxuXG4ud3JhcCAuYWNjb3VudC1uYXYtdGFiIHtcblx0cGFkZGluZy10b3A6MDtcbn1cblxuLnJhbmRvbS1sZW5ndGgtdGV4dCB7XG5cdG9wYWNpdHk6IC41O1xufVxuXG4jdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIC5mYS1wYXlwYWwge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0cGFkZGluZy10b3A6IDRweDtcblx0bWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcblx0Y29sb3I6ICMyNTNiODA7XG59XG5cbi8qIFNldHRpbmdzIFBhZ2UgVG9wIENvbnRhaW5lciAqL1xuLyogSG91c2VzIGxpbmtzIHRvIGxlYXZlIHVzIGEgcmV2aWV3LCBsaW5rcyB0byBFdmFuIEhlcm1hbidzIFdlYnNpdGUgZXRjLiAqL1xuLndyYXAgI3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciB7XG5cdHBhZGRpbmc6LjVlbTtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW4tdG9wOiAuNzVlbTtcbn1cblxuI3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciB7XG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuXHRcbiN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgYSwgI3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciBhOmhvdmVyIHtcblx0Y29sb3I6ICMzMzM7XG59XG5cdCN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgZGl2LCAjdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIHNwYW4sICN0aW1lbGluZV9leHByZXNzX3Jldmlld190aGlzX3BsdWdpbl9jb250YWluZXIgLnRpbWVsaW5lX2V4cHJlc3NfaGVhZGVyX2xvZ28ge1xuXHRcdGZsb2F0OmxlZnQ7XG5cdFx0bWFyZ2luOiAwIC41ZW07XG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdH1cblx0XHQjdGltZWxpbmVfZXhwcmVzc19yZXZpZXdfdGhpc19wbHVnaW5fY29udGFpbmVyIGRpdi5kYXNoaWNvbnMge1xuXHRcdFx0bWFyZ2luOiAwIDVweDtcblx0XHR9XG5cdFx0I3RpbWVsaW5lX2V4cHJlc3NfcmV2aWV3X3RoaXNfcGx1Z2luX2NvbnRhaW5lciBkaXYuZGFzaGljb25zLXBsdXMtYWx0IHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRjb2xvcjogcmdiKDE2MywgMTk1LCAxODQpO1xuXHRcdH1cblx0XHRcbi50aW1lbGluZS1leHByZXNzLWZvcm0ge1xuXHRtYXJnaW4tYm90dG9tOiAzZW07XG59XG5cblx0LnRpbWVsaW5lLWV4cHJlc3MtZm9ybSB0aCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblxuLnRpbWVsaW5lLWV4cHJlc3Mtc2V0dGluZ3MtZGVzY3JpcHRpb24ge1xuXHRwYWRkaW5nLWJvdHRvbTogMmVtICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiAjQTdBN0E3O1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGZvbnQtc2l6ZTogMTBweDtcbn1cblx0XG5cbi53cC1hZG1pbiAuYWN0aXZlLXBhcmVudC1idXR0b24sIC53cC1hZG1pbiAuYWN0aXZlLXBhcmVudC1idXR0b246aG92ZXIgIHtcblx0Y29sb3I6IHJlZDtcbn1cblxuLmRlbGV0ZS1ubzphZnRlciB7XG5cdGNvbnRlbnQ6IFwiIG5vLCBzYXZlIG15IGFubm91bmNlbWVudHMgZnJvbSBiZWluZyBkZWxldGVkLiBJJ2xsIG5lZWQgdGhlbSBhZ2FpbiFcIlxufVxuLmRlbGV0ZS1ubzpob3ZlciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kZWxldGUteWVzOmFmdGVyIHtcblx0Y29udGVudDogXCIgeWVzLCBkZWxldGUgYWxsIG9mIHRoZSBhbm5vdW5jZW1lbnQgcG9zdHMuIHRoZXkgYXJlIGRlYWQgdG8gbWUuXCJcbn1cbi5kZWxldGUteWVzOmhvdmVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiogQ29sb3IgUGlja2VyICoqL1xuLndwLXBpY2tlci1ob2xkZXIge1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0ei1pbmRleDogOTk5OTk5OTk7XG59XG5cbi8qIE5vIGV2ZW50cyBtZXNzYWdlIHdwX2VkaXRvciAqL1xuI25vLWV2ZW50cy1tZXNzYWdlX2lmciB7XG5cdG1heC1oZWlnaHQ6IDEwMHB4O1xufVxuXG4vKiBObyBFdmVudHMgRm91bmQgSW4gVGFibGUgLSB0ZXh0ICovXG4ud3AtbGlzdC10YWJsZSAubm8taXRlbXMgLmNvbHNwYW5jaGFuZ2Uge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGhlaWdodDogMTE1cHg7XG5cdGxpbmUtaGVpZ2h0OiA4O1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qIENvbHVtbiBXaWR0aHMgKi9cbi53cC1saXN0LXRhYmxlICNjb2xvciwgLndwLWxpc3QtdGFibGUgI2ljb24ge1xuXHR3aWR0aDogNjVweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLndwLWxpc3QtdGFibGUgI2Fubm91bmNlbWVudF9kYXRlLCAud3AtbGlzdC10YWJsZSAuY29sdW1uLWFubm91bmNlbWVudF9kYXRlIHtcblx0d2lkdGg6IDIxNXB4O1xufVxuXG4ud3AtbGlzdC10YWJsZSAjaW1hZ2UsIC53cC1saXN0LXRhYmxlIC5jb2x1bW4taW1hZ2Uge1xuXHR3aWR0aDogMjUwcHg7XG5cdHRleHQtYWxpZ246Y2VudGVyO1xufVxuXG4ubm8taW1hZ2UtdXNlZC10ZXh0IHtcblx0bGluZS1oZWlnaHQ6IDQuN1xufVxuXG4ud3AtbGlzdC10YWJsZSAjcGFzdF9hbm5vdW5jZW1lbnQge1xuXHR3aWR0aDogMTUwcHg7XG5cdHRleHQtYWxpZ246Y2VudGVyO1xufVxuXG4vKiBFZGl0IFRpbWVsaW5lIEV4cHJlc3MgQW5ub3VuY2VtZW50IFN0eWxlcyAqL1xuXG5cdC8qIEFubm91bmNlbWVudCBDb2xvciBCb3ggKi9cblx0LndwLWxpc3QtdGFibGUgLmFubm91bmNlbWVudF9jb2xvcl9ib3gge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0d2lkdGg6IDE1cHg7XG5cdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI4LCAxMjgsIDEyOCwgMC4yMik7XG5cdFx0cGFkZGluZzogLjVlbTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0bWFyZ2luLXRvcDogMTFweDtcblx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHQtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdH1cblx0LyogQW5ub3VuY2VtZW50IEljb24gKi9cblx0LndwLWxpc3QtdGFibGUgLmVkaXQtYW5ub3VuY2VtZW50LWljb24ge1xuXHRcdGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuXHRcdGxpbmUtaGVpZ2h0OiAyLjUgIWltcG9ydGFudDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblx0LyogQW5ub3VuY2VtZW50IERhdGUgKi9cblx0LndwLWxpc3QtdGFibGUgI2Fubm91bmNlbWVudF9kYXRlLCBcblx0dGgubWFuYWdlLWNvbHVtbi5jb2x1bW4tYW5ub3VuY2VtZW50X2RhdGUuc29ydGFibGUuZGVzYyB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0XHRwYWRkaW5nLWxlZnQ6IDIuNWVtO1xuXHR9XG5cdC53cC1saXN0LXRhYmxlIC5hbm5vdW5jZW1lbnRfZGF0ZSB7XG5cdFx0bGluZS1oZWlnaHQ6IDQuNSAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXHQvKiBQYXN0IEFubm91bmNlbWVudCBJY29uICovXG5cdC53cC1saXN0LXRhYmxlIC5kYXNoaWNvbi1wYXN0LWFubm91bmNlbWVudCB7XG5cdFx0Zm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XG5cdFx0bGluZS1oZWlnaHQ6IDIuMSAhaW1wb3J0YW50O1xuXHR9XG5cbi8qKiBBZG1pbiBCcmVhayBQb2ludHMgKiovXG5cbi5kYXNoaWNvbnMtc3Rhci1maWxsZWQge2NvbG9yOiNGRUJFMTI7fVxuXG4jdGltZWxpbmVfZXhwcmVzc19yZXNldF9wbHVnaW5fc2V0dGluZ3MgLmRhc2hpY29ucy1kaXNtaXNzIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi10b3A6IC41ZW07XG5cdHBhZGRpbmc6IC41ZW0gMWVtIDFlbSAuNWVtO1xuXHRjb2xvcjogcmdiKDI0MSwgODMsIDgzKTtcbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qXG4qXHRUaW1lbGluZSBFeHByZXNzIFdlbGNvbWUgUGFnZSBTdHlsZXNcbipcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC50aW1lbGluZS1leHByZXNzLWltYWdlIHtcblx0XG5iYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjA2LDIyMCwyMzEsLjcpIDAlLCByZ2JhKDg5LDEwNiwxMTQsLjcpIDEwMCUpO1xuYmFja2dyb3VuZC1pbWFnZTogdXJsKCAnLi4vaW1hZ2VzL3dlbGNvbWUvYmFja2dyb3VuZC5wbmcnICk7XG59XG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC50aW1lbGluZS1zY3JlZW5zaG90IHtcblx0cGFkZGluZzogMS41ZW07XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5mb250LWF3ZXNvbWUtYmFja2dyb3VuZCB7XG5cdHBhZGRpbmctdG9wOjNlbTtcblx0bWFyZ2luLXRvcDoxLjVlbTtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCAnLi4vaW1hZ2VzL3dlbGNvbWUvRm9udC1Bd2Vzb21lLUNoZWF0c2hlZXQucG5nJyApO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRoZWlnaHQ6MjUwcHg7XG5cdHRleHQtYWxpZ246Y2VudGVyO1xuXHRsaW5lLWhlaWdodDogODtcbn1cblxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuaW50dWl0aXZlLXBvc3QtY3JlYXRpb24ge1xuXHRwYWRkaW5nLXRvcDozZW07XG5cdG1hcmdpbi10b3A6MS41ZW07XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCggJy4uL2ltYWdlcy93ZWxjb21lL2ludHVpdGl2ZS1jcmVhdGlvbi1zY3JlZW4uanBnJyApO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGhlaWdodDo2NjVweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuYWRtaW4tbWFuYWdlLWFubm91bmNlbWVudHMge1xuXHRwYWRkaW5nLXRvcDozZW07XG5cdG1hcmdpbi10b3A6MS41ZW07XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCggJy4uL2ltYWdlcy93ZWxjb21lL01hbmFnZS1Bbm5vdW5jZW1lbnRzLmpwZycgKTtcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRoZWlnaHQ6NjY1cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLmN1c3RvbWl6ZS15b3VyLXRpbWVsaW5lIHtcblx0cGFkZGluZy10b3A6NCU7XG5cdG1hcmdpbi10b3A6MS41ZW07XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCggJy4uL2ltYWdlcy93ZWxjb21lL2N1c3RvbWl6ZS15b3VyLXRpbWVsaW5lLmpwZycgKTtcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRoZWlnaHQ6NjY1cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi8qIGZhZGUgc2xpZGVyICovXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5zbGlkZXMge1xuICAgIGhlaWdodDo2NjVweDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgd2lkdGg6MTAwJTtcblx0cGFkZGluZzogNCUgMCA0JSAwO1xufVxuXG5ib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5zbGlkZXMgdWwge1xuICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cblxuLyoga2V5ZnJhbWVzICNhbmltX3NsaWRlcyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1fc2xpZGVzIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgNiUge1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDI0JSB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMzAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbn1cbkAtbW96LWtleWZyYW1lcyBhbmltX3NsaWRlcyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxuICAgIDYlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgICAyNCUge1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDMwJSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG59XG5cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCBsaSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRcbiAgICBvcGFjaXR5OjA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG5cbiAgICAvKiBjc3MzIGFuaW1hdGlvbiAqL1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGFuaW1fc2xpZGVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxOC4wcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcblxuICAgIC1tb3otYW5pbWF0aW9uLW5hbWU6IGFuaW1fc2xpZGVzO1xuICAgIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxOC4wcztcbiAgICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtbW96LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIC1tb3otYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAwO1xuICAgIC1tb3otYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7XG4gICAgLW1vei1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cblxuLyogY3NzMyBkZWxheXMgKi9cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCAgbGk6bnRoLWNoaWxkKDIpLCBib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5zbGlkZXMgdWwgIGxpOm50aC1jaGlsZCgyKSBoMi5wcm9tby10ZXh0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNi4wcztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheTogNi4wcztcbn1cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCAgbGk6bnRoLWNoaWxkKDMpLCBib2R5LmFkbWluX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy13ZWxjb21lIC5zbGlkZXMgdWwgIGxpOm50aC1jaGlsZCgzKSBoMi5wcm9tby10ZXh0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMTIuMHM7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6IDEyLjBzO1xufVxuYm9keS5hZG1pbl9wYWdlX3RpbWVsaW5lLWV4cHJlc3Mtd2VsY29tZSAuc2xpZGVzIHVsIGxpIGltZyB7XG4gICAgZGlzcGxheTpibG9jaztcbn1cblxuLyoga2V5ZnJhbWVzICNhbmltX3RpdGxlcyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1fdGl0bGVzIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgNSUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDIwJSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG4gICAgMjUlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbn1cbkAtbW96LWtleWZyYW1lcyBhbmltX3RpdGxlcyB7XG4gICAgMCUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgfVxuICAgIDUlIHtcbiAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgICAyMCUge1xuICAgICAgICBsZWZ0OjUlO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDI1JSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6NSU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG59XG5cbmJvZHkuYWRtaW5fcGFnZV90aW1lbGluZS1leHByZXNzLXdlbGNvbWUgLnNsaWRlcyB1bCBsaSBoMi5wcm9tby10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwMDA7XG4gICAgYm9yZGVyLXJhZGl1czoxMHB4IDEwcHggMTBweCAxMHB4O1xuICAgIGJveC1zaGFkb3c6MCAwIDNweCAjRkZGRkZGIGluc2V0O1xuICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgZm9udC1zaXplOjE4cHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOjEwcHg7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOi0zNXB4O1xuICAgIHdpZHRoOjM1MHB4O1xuXHR0ZXh0LWFsaWduOmNlbnRlcjtcblxuICAgIC8qIGNzczMgYW5pbWF0aW9uICovXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYW5pbV90aXRsZXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDE4LjBzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXG4gICAgLW1vei1hbmltYXRpb24tbmFtZTogYW5pbV90aXRsZXM7XG4gICAgLW1vei1hbmltYXRpb24tZHVyYXRpb246IDE4LjBzO1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC1tb3otYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLW1vei1hbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6IDA7XG4gICAgLW1vei1hbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuXG5cbi5kYXNoaWNvbnMtaGVhcnQge1xuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjhjZjcsICNlMmE1ZTApO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjZmY4Y2Y3LCAjZTJhNWUwKTtcblx0LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG5cdC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG4vKiBWZXJzaW9uIDEuMS40ICwgc3VwcG9ydCBwYWdlIHN0eWxlcyAqL1xuI3RpbWVsaW5lLWV4cHJlc3Mtc3VwcG9ydC1wYWdlLXdyYXAge1xuXHRwYWRkaW5nOiAyZW07XG59XG5cbi50ZV9hbm5vdW5jZW1lbnRzX3BhZ2VfdGltZWxpbmUtZXhwcmVzcy1zZXR0aW5ncyAud3JhcCB7XG5cdHBhZGRpbmc6IDAgMmVtO1xufVxuXG4jdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2Utd3JhcCBociB7XG5cdG1hcmdpbjogMS41ZW0gMDtcbn1cblxuI3RpbWVsaW5lLWV4cHJlc3Mtc3VwcG9ydC1wYWdlLWhlYWRlciB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDEwMCU7XG59XG5cbiN0aW1lbGluZS1leHByZXNzLXN1cHBvcnQtcGFnZS1oZWFkZXIgaW1nLnRlLWxvZ28ge1xuXHRtYXgtd2lkdGg6IDEyOHB4O1xuXHRtaW4td2lkdGg6IDkwcHg7XG5cdHdpZHRoOiAyMCU7XG5cdGZsb2F0OiBsZWZ0O1xufVxuXG4jdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2UtaGVhZGVyIC5zdXBwb3J0LXN1YmhlYWQgIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMmVtIDAgMCAxZW07XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogNDQlO1xufVxuXG4jdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2Utd3JhcCAjdGltZWxpbmVfZXhwcmVzc19saWNlbnNlX2tleSB7XG5cdHdpZHRoOiAyNSU7XG5cdG1pbi13aWR0aDogNDAwcHg7XG59XG5cbi8qIFZhbGlkIGxpY2Vuc2UgQ2hlY2sgbWFyayAqL1xuLnRpbWVsaW5lLWV4cHJlc3MtdmFsaWQtbGljZW5zZSB7XG5cdGNvbG9yOiByZ2JhKDE0NCwgMjE0LCAxMjUsIDAuNjgpO1xuXHRmb250LXNpemU6IDI4cHg7XG59XG5cbi8qIFB1cmNoYXNlIHN1cHBvcnQgbGljZW5zZSBidXR0b24gKi9cbi5wdXJjaGFzZS1zdXBwb3J0LWxpY2Vuc2Uge1xuXHRtYXJnaW4tbGVmdDogLS41ZW0gIWltcG9ydGFudDtcbn1cblxuLyogVGltZWxpbmUgRXhwcmVzcyBTdXBwb3J0IExpY2Vuc2UgRm9ybXMgUGFnZSAqL1xuLnRpbWVsaW5lLWV4cHJlc3MtbGljZW5zZS1idXR0b25zIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tdG9wOiAyZW07XG59XG5cbi8qIEludmFsaWQgTGljZW5zZSBFcnJvciAqL1xuLnRpbWVsaW5lLWV4cHJlc3MtaW52YWxpZC1saWNlbnNlLWVycm9yIHtcblx0Y29sb3I6IHJnYmEoMjI1LCA0NywgNDcsIDAuNzMpO1xufVxuXG4vKiBQcmVtaXVtIFN1cHBvcnQgQ29udGFjdCBGb3JtICovXG4jcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogMzMlO1xuXHRtaW4td2lkdGg6IDMwMHB4O1xufVxuXHQjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHQjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIGlucHV0LCAjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIHRleHRhcmVhLCAjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIGxhYmVsIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHQjcHJlbWl1bS1zdXBwb3J0LWNvbnRhY3QtZm9ybSBmb3JtIHRleHRhcmVhIHtcblx0XHRyZXNpemU6IHZlcnRpY2FsO1xuXHR9XG5cdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgI3ByZW1pdW0tc3VwcG9ydC1jb250YWN0LWZvcm0gZm9ybSBsYWJlbCB7XG5cdFx0bWFyZ2luLXRvcDogMWVtO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cbi8qIExpY2Vuc2UgRXhwaXJpbmcgU29vbiBNZXNzYWdlICovXG4ubGljZW5zZS1leHBpcmluZy1zb29uIHtcblx0Zm9udC1zaXplOiAxMXB4O1xuXHRjb2xvcjogcmdiKDI0MywgNzUsIDc1KTtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cdFxuXHRcbi8qIEJyZWFrIFBvaW50cyAqL1x0XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwODFweCkge1xuXHRcdCN0aW1lbGluZV9leHByZXNzX2xpY2Vuc2Vfa2V5IHtcblx0XHRcdG1pbi13aWR0aDogOTAlICFpbXBvcnRhbnQ7XG5cdFx0XHR3aWR0aDogOTAlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gaW5wdXQsICNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gdGV4dGFyZWEsICNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIGZvcm0gbGFiZWwge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHRcdCNwcmVtaXVtLXN1cHBvcnQtY29udGFjdC1mb3JtIHtcblx0XHRcdG1hcmdpbjogMmVtIDAgMCAwO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0I3RpbWVsaW5lLWV4cHJlc3Mtc3VwcG9ydC1wYWdlLXdyYXAgdGFibGUud2lkZWZhdC5maXhlZCB7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0I3RpbWVsaW5lLWV4cHJlc3Mtc3VwcG9ydC1wYWdlLWhlYWRlciAuc3VwcG9ydC1zdWJoZWFkIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0XHQjdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2UtaGVhZGVyIC50ZS1sb2dvIHtcblx0XHRcdG1pbi13aWR0aDogMTQwcHggIWltcG9ydGFudDtcblx0XHRcdGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblx0XHQjdGltZWxpbmUtZXhwcmVzcy1zdXBwb3J0LXBhZ2UtaGVhZGVyIC5zdXBwb3J0LXN1YmhlYWQgaDEge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHR9XHRcbn1cdFxuXG4vKiogRW5kIFRpbWVsaW5lIEV4cHJlc3MgQWRtaW4gU3R5bGVzICovIl19 */
lib/admin/js/min/timeline-express-admin.min.js CHANGED
@@ -2,14 +2,7 @@
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
- */
8
- /*
9
- * @Plugin Timeline Express
10
- * @Author Code Parrots
11
- * @Site https://www.wp-timelineexpress.com
12
- * @Version 1.2.8.4
13
- * @Build 09-14-2016
14
  */
15
  function changeRandomTrimLengthCheckbox(){var a=jQuery('input[name="excerpt-random-length"]').prop("checked");"1"==a?(jQuery('input[name="excerpt-trim-length"]').fadeOut("fast",function(){jQuery('input[name="excerpt-random-length"]').css("margin-left","0em")}),jQuery("#random-lenth-text-container").removeClass("random-length-text")):(jQuery('input[name="excerpt-random-length"]').css("margin-left",".5em"),jQuery('input[name="excerpt-trim-length"]').fadeIn("fast"),jQuery("#random-lenth-text-container").addClass("random-length-text"))}function toggleDeleteCheckClass(){var a=jQuery('input[name="delete-announcement-posts-on-uninstallation"]').prop("checked");a===!0?(jQuery(".delete-no").addClass("delete-yes"),jQuery(".delete-yes").removeClass("delete-no")):(jQuery(".delete-yes").addClass("delete-no"),jQuery(".delete-no").removeClass("delete-yes"))}function toggle_delete_checkbox(){var a=jQuery('input[name="delete-announcement-posts-on-uninstallation"]').prop("checked");a===!1?(jQuery(".delete-no").addClass("delete-yes"),jQuery(".delete-yes").removeClass("delete-no"),jQuery('input[name="delete-announcement-posts-on-uninstallation"]').attr("checked",!0)):(jQuery(".delete-yes").addClass("delete-no"),jQuery(".delete-no").removeClass("delete-yes"),jQuery('input[name="delete-announcement-posts-on-uninstallation"]').attr("checked",!1))}!function(a){"use strict";function b(a,b){return a.toUpperCase().indexOf(b.toUpperCase())>-1}function c(b){var c=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];return a.each(c,function(){b=b.replace(this.re,this.ch)}),b}function d(a){var b={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},c="(?:"+Object.keys(b).join("|")+")",d=new RegExp(c),e=new RegExp(c,"g"),f=null==a?"":""+a;return d.test(f)?f.replace(e,function(a){return b[a]}):f}function e(b,c){var d=arguments,e=b,b=d[0],c=d[1];[].shift.apply(d),"undefined"==typeof b&&(b=e);var g,h=this.each(function(){var e=a(this);if(e.is("select")){var h=e.data("selectpicker"),i="object"==typeof b&&b;if(h){if(i)for(var j in i)i.hasOwnProperty(j)&&(h.options[j]=i[j])}else{var k=a.extend({},f.DEFAULTS,a.fn.selectpicker.defaults||{},e.data(),i);e.data("selectpicker",h=new f(this,k,c))}"string"==typeof b&&(g=h[b]instanceof Function?h[b].apply(h,d):h.options[b])}});return"undefined"!=typeof g?g:h}a.expr[":"].icontains=function(c,d,e){return b(a(c).text(),e[3])},a.expr[":"].aicontains=function(c,d,e){return b(a(c).data("normalizedText")||a(c).text(),e[3])};var f=function(b,c,d){d&&(d.stopPropagation(),d.preventDefault()),this.$element=a(b),this.$newElement=null,this.$button=null,this.$menu=null,this.$lis=null,this.options=c,null===this.options.title&&(this.options.title=this.$element.attr("title")),this.val=f.prototype.val,this.render=f.prototype.render,this.refresh=f.prototype.refresh,this.setStyle=f.prototype.setStyle,this.selectAll=f.prototype.selectAll,this.deselectAll=f.prototype.deselectAll,this.destroy=f.prototype.remove,this.remove=f.prototype.remove,this.show=f.prototype.show,this.hide=f.prototype.hide,this.init()};f.VERSION="1.6.3",f.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results match",countSelectedText:function(a,b){return 1==a?"{0} item selected":"{0} items selected"},maxOptionsText:function(a,b){var c=[];return c[0]=1==a?"Limit reached ({n} item max)":"Limit reached ({n} items max)",c[1]=1==b?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)",c},selectAllText:"Select All",deselectAllText:"Deselect All",multipleSeparator:", ",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,actionsBox:!1,iconBase:"fa",tickIcon:"fa-ok",maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,searchAccentInsensitive:!1},f.prototype={constructor:f,init:function(){var b=this,c=this.$element.attr("id");this.$element.hide(),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$newElement=this.createView(),this.$element.after(this.$newElement),this.$menu=this.$newElement.find("> .dropdown-menu"),this.$button=this.$newElement.find("> button"),this.$searchbox=this.$newElement.find("input"),this.options.dropdownAlignRight&&this.$menu.addClass("dropdown-menu-right"),"undefined"!=typeof c&&(this.$button.attr("data-id",c),a('label[for="'+c+'"]').click(function(a){a.preventDefault(),b.$button.focus()})),this.checkDisabled(),this.clickListener(),this.options.liveSearch&&this.liveSearchListener(),this.render(),this.liHeight(),this.setStyle(),this.setWidth(),this.options.container&&this.selectPosition(),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile()},createDropdown:function(){var b=this.multiple?" show-tick":"",c=this.$element.parent().hasClass("input-group")?" input-group-btn":"",d=this.autofocus?" autofocus":"",e=this.$element.parents().hasClass("form-group-lg")?" btn-lg":this.$element.parents().hasClass("form-group-sm")?" btn-sm":"",f=this.options.header?'<div class="popover-title"><button type="button" class="close" aria-hidden="true">&times;</button>'+this.options.header+"</div>":"",g=this.options.liveSearch?'<div class="bs-searchbox"><input type="text" class="input-block-level form-control" autocomplete="off" /></div>':"",h=this.options.actionsBox?'<div class="bs-actionsbox"><div class="btn-group btn-block"><button class="actions-btn bs-select-all btn btn-sm btn-default">'+this.options.selectAllText+'</button><button class="actions-btn bs-deselect-all btn btn-sm btn-default">'+this.options.deselectAllText+"</button></div></div>":"",i='<div class="btn-group bootstrap-select'+b+c+'"><button type="button" class="btn dropdown-toggle selectpicker'+e+'" data-toggle="dropdown"'+d+'><span class="filter-option pull-left"></span>&nbsp;<span class="caret"></span></button><div class="dropdown-menu open">'+f+g+h+'<ul class="dropdown-menu inner selectpicker" role="menu"></ul></div></div>';return a(i)},createView:function(){var a=this.createDropdown(),b=this.createLi();return a.find("ul").append(b),a},reloadLi:function(){this.destroyLi();var a=this.createLi();this.$menu.find("ul").append(a)},destroyLi:function(){this.$menu.find("li").remove()},createLi:function(){var b=this,e=[],f=0,g=function(a,b,c){return"<li"+("undefined"!=typeof c?' class="'+c+'"':"")+("undefined"!=typeof b|null===b?' data-original-index="'+b+'"':"")+">"+a+"</li>"},h=function(a,e,f,g){var h=c(d(a));return'<a tabindex="0"'+("undefined"!=typeof e?' class="'+e+'"':"")+("undefined"!=typeof f?' style="'+f+'"':"")+("undefined"!=typeof g?'data-optgroup="'+g+'"':"")+' data-normalized-text="'+h+'">'+a+'<span class="'+b.options.iconBase+" "+b.options.tickIcon+' check-mark"></span></a>'};return this.$element.find("option").each(function(){var c=a(this),d=c.attr("class")||"",i=c.attr("style"),j=c.data("content")?c.data("content"):c.html(),k="undefined"!=typeof c.data("subtext")?'<small class="muted text-muted">'+c.data("subtext")+"</small>":"",l="undefined"!=typeof c.data("icon")?'<span class="'+b.options.iconBase+" "+c.data("icon")+'"></span> ':"",m=c.is(":disabled")||c.parent().is(":disabled"),n=c[0].index;if(""!==l&&m&&(l="<span>"+l+"</span>"),c.data("content")||(j=l+'<span class="text">'+j+k+"</span>"),!b.options.hideDisabled||!m)if(c.parent().is("optgroup")&&c.data("divider")!==!0){if(0===c.index()){f+=1;var o=c.parent().attr("label"),p="undefined"!=typeof c.parent().data("subtext")?'<small class="muted text-muted">'+c.parent().data("subtext")+"</small>":"",q=c.parent().data("icon")?'<span class="'+b.options.iconBase+" "+c.parent().data("icon")+'"></span> ':"";o=q+'<span class="text">'+o+p+"</span>",0!==n&&e.length>0&&e.push(g("",null,"divider")),e.push(g(o,null,"dropdown-header"))}e.push(g(h(j,"opt "+d,i,f),n))}else c.data("divider")===!0?e.push(g("",n,"divider")):c.data("hidden")===!0?e.push(g(h(j,d,i),n,"hide is-hidden")):e.push(g(h(j,d,i),n))}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),a(e.join(""))},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(b){var c=this;b!==!1&&this.$element.find("option").each(function(b){c.setDisabled(b,a(this).is(":disabled")||a(this).parent().is(":disabled")),c.setSelected(b,a(this).is(":selected"))}),this.tabIndex();var e=this.options.hideDisabled?":not([disabled])":"",f=this.$element.find("option:selected"+e).map(function(){var b,d=a(this),e=d.data("icon")&&c.options.showIcon?'<i class="'+c.options.iconBase+" "+d.data("icon")+'"></i> ':"";return b=c.options.showSubtext&&d.attr("data-subtext")&&!c.multiple?' <small class="muted text-muted">'+d.data("subtext")+"</small>":"",d.data("content")&&c.options.showContent?d.data("content"):"undefined"!=typeof d.attr("title")?d.attr("title"):e+d.html()+b}).toArray(),g=this.multiple?f.join(this.options.multipleSeparator):f[0];if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var h=this.options.selectedTextFormat.split(">");if(h.length>1&&f.length>h[1]||1==h.length&&f.length>=2){e=this.options.hideDisabled?", [disabled]":"";var i=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+e).length,j="function"==typeof this.options.countSelectedText?this.options.countSelectedText(f.length,i):this.options.countSelectedText;g=j.replace("{0}",f.length.toString()).replace("{1}",i.toString())}}this.options.title=this.$element.attr("title"),"static"==this.options.selectedTextFormat&&(g=this.options.title),g||(g="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText),this.$button.attr("title",d(g)),this.$newElement.find(".filter-option").html(g)},setStyle:function(a,b){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|validate\[.*\]/gi,""));var c=a?a:this.options.style;"add"==b?this.$button.addClass(c):"remove"==b?this.$button.removeClass(c):(this.$button.removeClass(this.options.style),this.$button.addClass(c))},liHeight:function(){if(this.options.size!==!1){var a=this.$menu.parent().clone().find("> .dropdown-toggle").prop("autofocus",!1).end().appendTo("body"),b=a.addClass("open").find("> .dropdown-menu"),c=b.find("li").not(".divider").not(".dropdown-header").filter(":visible").children("a").outerHeight(),d=this.options.header?b.find(".popover-title").outerHeight():0,e=this.options.liveSearch?b.find(".bs-searchbox").outerHeight():0,f=this.options.actionsBox?b.find(".bs-actionsbox").outerHeight():0;a.remove(),this.$newElement.data("liHeight",c).data("headerHeight",d).data("searchHeight",e).data("actionsHeight",f)}},setSize:function(){this.findLis();var b,c,d,e=this,f=this.$menu,g=f.find(".inner"),h=this.$newElement.outerHeight(),i=this.$newElement.data("liHeight"),j=this.$newElement.data("headerHeight"),k=this.$newElement.data("searchHeight"),l=this.$newElement.data("actionsHeight"),m=this.$lis.filter(".divider").outerHeight(!0),n=parseInt(f.css("padding-top"))+parseInt(f.css("padding-bottom"))+parseInt(f.css("border-top-width"))+parseInt(f.css("border-bottom-width")),o=this.options.hideDisabled?", .disabled":"",p=a(window),q=n+parseInt(f.css("margin-top"))+parseInt(f.css("margin-bottom"))+2,r=function(){c=e.$newElement.offset().top-p.scrollTop(),d=p.height()-c-h};if(r(),this.options.header&&f.css("padding-top",0),"auto"==this.options.size){var s=function(){var a,h=e.$lis.not(".hide");r(),b=d-q,e.options.dropupAuto&&e.$newElement.toggleClass("dropup",c>d&&b-q<f.height()),e.$newElement.hasClass("dropup")&&(b=c-q),a=h.length+h.filter(".dropdown-header").length>3?3*i+q-2:0,f.css({"max-height":b+"px",overflow:"hidden","min-height":a+j+k+l+"px"}),g.css({"max-height":b-j-k-l-n+"px","overflow-y":"auto","min-height":Math.max(a-n,0)+"px"})};s(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",s),a(window).off("resize.getSize").on("resize.getSize",s),a(window).off("scroll.getSize").on("scroll.getSize",s)}else if(this.options.size&&"auto"!=this.options.size&&f.find("li"+o).length>this.options.size){var t=this.$lis.not(".divider"+o).find(" > *").slice(0,this.options.size).last().parent().index(),u=this.$lis.slice(0,t+1).filter(".divider").length;b=i*this.options.size+u*m+n,e.options.dropupAuto&&this.$newElement.toggleClass("dropup",c>d&&b<f.height()),f.css({"max-height":b+j+k+l+"px",overflow:"hidden"}),g.css({"max-height":b-n+"px","overflow-y":"auto"})}},setWidth:function(){if("auto"==this.options.width){this.$menu.css("min-width","0");var a=this.$newElement.clone().appendTo("body"),b=a.find("> .dropdown-menu").css("width"),c=a.css("width","auto").find("> button").css("width");a.remove(),this.$newElement.css("width",Math.max(parseInt(b),parseInt(c))+"px")}else"fit"==this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width",""));this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement.removeClass("fit-width")},selectPosition:function(){var b,c,d=this,e="<div />",f=a(e),g=function(a){f.addClass(a.attr("class").replace(/form-control/gi,"")).toggleClass("dropup",a.hasClass("dropup")),b=a.offset(),c=a.hasClass("dropup")?0:a[0].offsetHeight,f.css({top:b.top+c,left:b.left,width:a[0].offsetWidth,position:"absolute"})};this.$newElement.on("click",function(){d.isDisabled()||(g(a(this)),f.appendTo(d.options.container),f.toggleClass("open",!a(this).hasClass("open")),f.append(d.$menu))}),a(window).resize(function(){g(d.$newElement)}),a(window).on("scroll",function(){g(d.$newElement)}),a("html").on("click",function(b){a(b.target).closest(d.$newElement).length<1&&f.removeClass("open")})},setSelected:function(a,b){this.findLis(),this.$lis.filter('[data-original-index="'+a+'"]').toggleClass("selected",b)},setDisabled:function(a,b){this.findLis(),b?this.$lis.filter('[data-original-index="'+a+'"]').addClass("disabled").find("a").attr("href","#").attr("tabindex",-1):this.$lis.filter('[data-original-index="'+a+'"]').removeClass("disabled").find("a").removeAttr("href").attr("tabindex",0)},isDisabled:function(){return this.$element.is(":disabled")},checkDisabled:function(){var a=this;this.isDisabled()?this.$button.addClass("disabled").attr("tabindex",-1):(this.$button.hasClass("disabled")&&this.$button.removeClass("disabled"),-1==this.$button.attr("tabindex")&&(this.$element.data("tabindex")||this.$button.removeAttr("tabindex"))),this.$button.click(function(){return!a.isDisabled()})},tabIndex:function(){this.$element.is("[tabindex]")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex")))},clickListener:function(){var b=this;this.$newElement.on("touchstart.dropdown",".dropdown-menu",function(a){a.stopPropagation()}),this.$newElement.on("click",function(){b.setSize(),b.options.liveSearch||b.multiple||setTimeout(function(){b.$menu.find(".selected a").focus()},10)}),this.$menu.on("click","li a",function(c){var d=a(this),e=d.parent().data("originalIndex"),f=b.$element.val(),g=b.$element.prop("selectedIndex");if(b.multiple&&c.stopPropagation(),c.preventDefault(),!b.isDisabled()&&!d.parent().hasClass("disabled")){var h=b.$element.find("option"),i=h.eq(e),j=i.prop("selected"),k=i.parent("optgroup"),l=b.options.maxOptions,m=k.data("maxOptions")||!1;if(b.multiple){if(i.prop("selected",!j),b.setSelected(e,!j),d.blur(),l!==!1||m!==!1){var n=l<h.filter(":selected").length,o=m<k.find("option:selected").length;if(l&&n||m&&o)if(l&&1==l)h.prop("selected",!1),i.prop("selected",!0),b.$menu.find(".selected").removeClass("selected"),b.setSelected(e,!0);else if(m&&1==m){k.find("option:selected").prop("selected",!1),i.prop("selected",!0);var p=d.data("optgroup");b.$menu.find(".selected").has('a[data-optgroup="'+p+'"]').removeClass("selected"),b.setSelected(e,!0)}else{var q="function"==typeof b.options.maxOptionsText?b.options.maxOptionsText(l,m):b.options.maxOptionsText,r=q[0].replace("{n}",l),s=q[1].replace("{n}",m),t=a('<div class="notify"></div>');q[2]&&(r=r.replace("{var}",q[2][l>1?0:1]),s=s.replace("{var}",q[2][m>1?0:1])),i.prop("selected",!1),b.$menu.append(t),l&&n&&(t.append(a("<div>"+r+"</div>")),b.$element.trigger("maxReached.bs.select")),m&&o&&(t.append(a("<div>"+s+"</div>")),b.$element.trigger("maxReachedGrp.bs.select")),setTimeout(function(){b.setSelected(e,!1)},10),t.delay(750).fadeOut(300,function(){a(this).remove()})}}}else h.prop("selected",!1),i.prop("selected",!0),b.$menu.find(".selected").removeClass("selected"),b.setSelected(e,!0);b.multiple?b.options.liveSearch&&b.$searchbox.focus():b.$button.focus(),(f!=b.$element.val()&&b.multiple||g!=b.$element.prop("selectedIndex")&&!b.multiple)&&b.$element.change()}}),this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(a){a.target==this&&(a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus())}),this.$menu.on("click","li.divider, li.dropdown-header",function(a){a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus()}),this.$menu.on("click",".popover-title .close",function(){b.$button.focus()}),this.$searchbox.on("click",function(a){a.stopPropagation()}),this.$menu.on("click",".actions-btn",function(c){b.options.liveSearch?b.$searchbox.focus():b.$button.focus(),c.preventDefault(),c.stopPropagation(),a(this).is(".bs-select-all")?b.selectAll():b.deselectAll(),b.$element.change()}),this.$element.change(function(){b.render(!1)})},liveSearchListener:function(){var b=this,e=a('<li class="no-results"></li>');this.$newElement.on("click.dropdown.data-api touchstart.dropdown.data-api",function(){b.$menu.find(".active").removeClass("active"),b.$searchbox.val()&&(b.$searchbox.val(""),b.$lis.not(".is-hidden").removeClass("hide"),e.parent().length&&e.remove()),b.multiple||b.$menu.find(".selected").addClass("active"),setTimeout(function(){b.$searchbox.focus()},10)}),this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(a){a.stopPropagation()}),this.$searchbox.on("input propertychange",function(){b.$searchbox.val()?(b.options.searchAccentInsensitive?b.$lis.not(".is-hidden").removeClass("hide").find("a").not(":aicontains("+c(b.$searchbox.val())+")").parent().addClass("hide"):b.$lis.not(".is-hidden").removeClass("hide").find("a").not(":icontains("+b.$searchbox.val()+")").parent().addClass("hide"),b.$menu.find("li").filter(":visible:not(.no-results)").length?e.parent().length&&e.remove():(e.parent().length&&e.remove(),e.html(b.options.noneResultsText+' "'+d(b.$searchbox.val())+'"').show(),b.$menu.find("li").last().after(e))):(b.$lis.not(".is-hidden").removeClass("hide"),e.parent().length&&e.remove()),b.$menu.find("li.active").removeClass("active"),b.$menu.find("li").filter(":visible:not(.divider)").eq(0).addClass("active").find("a").focus(),a(this).focus()})},val:function(a){return"undefined"!=typeof a?(this.$element.val(a),this.render(),this.$element):this.$element.val()},selectAll:function(){this.findLis(),this.$lis.not(".divider").not(".disabled").not(".selected").filter(":visible").find("a").click()},deselectAll:function(){this.findLis(),this.$lis.not(".divider").not(".disabled").filter(".selected").filter(":visible").find("a").click()},keydown:function(b){var d,e,f,g,h,i,j,k,l,m=a(this),n=m.is("input")?m.parent().parent():m.parent(),o=n.data("this"),p={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};if(o.options.liveSearch&&(n=m.parent().parent()),o.options.container&&(n=o.$menu),d=a("[role=menu] li a",n),l=o.$menu.parent().hasClass("open"),!l&&/([0-9]|[A-z])/.test(String.fromCharCode(b.keyCode))&&(o.options.container?o.$newElement.trigger("click"):(o.setSize(),o.$menu.parent().addClass("open"),l=!0),o.$searchbox.focus()),o.options.liveSearch&&(/(^9$|27)/.test(b.keyCode.toString(10))&&l&&0===o.$menu.find(".active").length&&(b.preventDefault(),o.$menu.parent().removeClass("open"),o.$button.focus()),d=a("[role=menu] li:not(.divider):not(.dropdown-header):visible",n),m.val()||/(38|40)/.test(b.keyCode.toString(10))||0===d.filter(".active").length&&(d=o.options.searchAccentInsensitive?o.$newElement.find("li").filter(":aicontains("+c(p[b.keyCode])+")"):o.$newElement.find("li").filter(":icontains("+p[b.keyCode]+")"))),d.length){if(/(38|40)/.test(b.keyCode.toString(10)))e=d.index(d.filter(":focus")),g=d.parent(":not(.disabled):visible").first().index(),h=d.parent(":not(.disabled):visible").last().index(),f=d.eq(e).parent().nextAll(":not(.disabled):visible").eq(0).index(),i=d.eq(e).parent().prevAll(":not(.disabled):visible").eq(0).index(),j=d.eq(f).parent().prevAll(":not(.disabled):visible").eq(0).index(),o.options.liveSearch&&(d.each(function(b){a(this).is(":not(.disabled)")&&a(this).data("index",b)}),e=d.index(d.filter(".active")),g=d.filter(":not(.disabled):visible").first().data("index"),h=d.filter(":not(.disabled):visible").last().data("index"),f=d.eq(e).nextAll(":not(.disabled):visible").eq(0).data("index"),i=d.eq(e).prevAll(":not(.disabled):visible").eq(0).data("index"),j=d.eq(f).prevAll(":not(.disabled):visible").eq(0).data("index")),k=m.data("prevIndex"),38==b.keyCode&&(o.options.liveSearch&&(e-=1),e!=j&&e>i&&(e=i),g>e&&(e=g),e==k&&(e=h)),40==b.keyCode&&(o.options.liveSearch&&(e+=1),-1==e&&(e=0),e!=j&&f>e&&(e=f),e>h&&(e=h),e==k&&(e=g)),m.data("prevIndex",e),o.options.liveSearch?(b.preventDefault(),m.is(".dropdown-toggle")||(d.removeClass("active"),d.eq(e).addClass("active").find("a").focus(),m.focus())):d.eq(e).focus();else if(!m.is("input")){var q,r,s=[];d.each(function(){a(this).parent().is(":not(.disabled)")&&a.trim(a(this).text().toLowerCase()).substring(0,1)==p[b.keyCode]&&s.push(a(this).parent().index())}),q=a(document).data("keycount"),q++,a(document).data("keycount",q),r=a.trim(a(":focus").text().toLowerCase()).substring(0,1),r!=p[b.keyCode]?(q=1,a(document).data("keycount",q)):q>=s.length&&(a(document).data("keycount",0),q>s.length&&(q=1)),d.eq(s[q-1]).focus()}(/(13|32)/.test(b.keyCode.toString(10))||/(^9$)/.test(b.keyCode.toString(10))&&o.options.selectOnTab)&&l&&(/(32)/.test(b.keyCode.toString(10))||b.preventDefault(),o.options.liveSearch?/(32)/.test(b.keyCode.toString(10))||(o.$menu.find(".active a").click(),m.focus()):a(":focus").click(),a(document).data("keycount",0)),(/(^9$|27)/.test(b.keyCode.toString(10))&&l&&(o.multiple||o.options.liveSearch)||/(27)/.test(b.keyCode.toString(10))&&!l)&&(o.$menu.parent().removeClass("open"),o.$button.focus())}},mobile:function(){this.$element.addClass("mobile-device").appendTo(this.$newElement),this.options.container&&this.$menu.hide()},refresh:function(){this.$lis=null,this.reloadLi(),this.render(),this.setWidth(),this.setStyle(),this.checkDisabled(),this.liHeight()},update:function(){this.reloadLi(),this.setWidth(),this.setStyle(),this.checkDisabled(),this.liHeight()},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()}};var g=a.fn.selectpicker;a.fn.selectpicker=e,a.fn.selectpicker.Constructor=f,a.fn.selectpicker.noConflict=function(){return a.fn.selectpicker=g,this},a(document).data("keycount",0).on("keydown",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",f.prototype.keydown).on("focusin.modal",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",function(a){a.stopPropagation()}),a(window).on("load.bs.select.data-api",function(){a(".selectpicker").each(function(){var b=a(this);e.call(b,b.data())})})}(jQuery),jQuery(document).ready(function(){jQuery(".color-picker-field").length&&(jQuery(".color-picker-field").wpColorPicker(),jQuery(".meta-box-sortables").sortable({disabled:!0}),jQuery(".postbox .hndle").css("cursor","pointer"))});
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
 
 
 
 
 
 
 
7
  */
8
  function changeRandomTrimLengthCheckbox(){var a=jQuery('input[name="excerpt-random-length"]').prop("checked");"1"==a?(jQuery('input[name="excerpt-trim-length"]').fadeOut("fast",function(){jQuery('input[name="excerpt-random-length"]').css("margin-left","0em")}),jQuery("#random-lenth-text-container").removeClass("random-length-text")):(jQuery('input[name="excerpt-random-length"]').css("margin-left",".5em"),jQuery('input[name="excerpt-trim-length"]').fadeIn("fast"),jQuery("#random-lenth-text-container").addClass("random-length-text"))}function toggleDeleteCheckClass(){var a=jQuery('input[name="delete-announcement-posts-on-uninstallation"]').prop("checked");a===!0?(jQuery(".delete-no").addClass("delete-yes"),jQuery(".delete-yes").removeClass("delete-no")):(jQuery(".delete-yes").addClass("delete-no"),jQuery(".delete-no").removeClass("delete-yes"))}function toggle_delete_checkbox(){var a=jQuery('input[name="delete-announcement-posts-on-uninstallation"]').prop("checked");a===!1?(jQuery(".delete-no").addClass("delete-yes"),jQuery(".delete-yes").removeClass("delete-no"),jQuery('input[name="delete-announcement-posts-on-uninstallation"]').attr("checked",!0)):(jQuery(".delete-yes").addClass("delete-no"),jQuery(".delete-no").removeClass("delete-yes"),jQuery('input[name="delete-announcement-posts-on-uninstallation"]').attr("checked",!1))}!function(a){"use strict";function b(a,b){return a.toUpperCase().indexOf(b.toUpperCase())>-1}function c(b){var c=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];return a.each(c,function(){b=b.replace(this.re,this.ch)}),b}function d(a){var b={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},c="(?:"+Object.keys(b).join("|")+")",d=new RegExp(c),e=new RegExp(c,"g"),f=null==a?"":""+a;return d.test(f)?f.replace(e,function(a){return b[a]}):f}function e(b,c){var d=arguments,e=b,b=d[0],c=d[1];[].shift.apply(d),"undefined"==typeof b&&(b=e);var g,h=this.each(function(){var e=a(this);if(e.is("select")){var h=e.data("selectpicker"),i="object"==typeof b&&b;if(h){if(i)for(var j in i)i.hasOwnProperty(j)&&(h.options[j]=i[j])}else{var k=a.extend({},f.DEFAULTS,a.fn.selectpicker.defaults||{},e.data(),i);e.data("selectpicker",h=new f(this,k,c))}"string"==typeof b&&(g=h[b]instanceof Function?h[b].apply(h,d):h.options[b])}});return"undefined"!=typeof g?g:h}a.expr[":"].icontains=function(c,d,e){return b(a(c).text(),e[3])},a.expr[":"].aicontains=function(c,d,e){return b(a(c).data("normalizedText")||a(c).text(),e[3])};var f=function(b,c,d){d&&(d.stopPropagation(),d.preventDefault()),this.$element=a(b),this.$newElement=null,this.$button=null,this.$menu=null,this.$lis=null,this.options=c,null===this.options.title&&(this.options.title=this.$element.attr("title")),this.val=f.prototype.val,this.render=f.prototype.render,this.refresh=f.prototype.refresh,this.setStyle=f.prototype.setStyle,this.selectAll=f.prototype.selectAll,this.deselectAll=f.prototype.deselectAll,this.destroy=f.prototype.remove,this.remove=f.prototype.remove,this.show=f.prototype.show,this.hide=f.prototype.hide,this.init()};f.VERSION="1.6.3",f.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results match",countSelectedText:function(a,b){return 1==a?"{0} item selected":"{0} items selected"},maxOptionsText:function(a,b){var c=[];return c[0]=1==a?"Limit reached ({n} item max)":"Limit reached ({n} items max)",c[1]=1==b?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)",c},selectAllText:"Select All",deselectAllText:"Deselect All",multipleSeparator:", ",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,actionsBox:!1,iconBase:"fa",tickIcon:"fa-ok",maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,searchAccentInsensitive:!1},f.prototype={constructor:f,init:function(){var b=this,c=this.$element.attr("id");this.$element.hide(),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$newElement=this.createView(),this.$element.after(this.$newElement),this.$menu=this.$newElement.find("> .dropdown-menu"),this.$button=this.$newElement.find("> button"),this.$searchbox=this.$newElement.find("input"),this.options.dropdownAlignRight&&this.$menu.addClass("dropdown-menu-right"),"undefined"!=typeof c&&(this.$button.attr("data-id",c),a('label[for="'+c+'"]').click(function(a){a.preventDefault(),b.$button.focus()})),this.checkDisabled(),this.clickListener(),this.options.liveSearch&&this.liveSearchListener(),this.render(),this.liHeight(),this.setStyle(),this.setWidth(),this.options.container&&this.selectPosition(),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile()},createDropdown:function(){var b=this.multiple?" show-tick":"",c=this.$element.parent().hasClass("input-group")?" input-group-btn":"",d=this.autofocus?" autofocus":"",e=this.$element.parents().hasClass("form-group-lg")?" btn-lg":this.$element.parents().hasClass("form-group-sm")?" btn-sm":"",f=this.options.header?'<div class="popover-title"><button type="button" class="close" aria-hidden="true">&times;</button>'+this.options.header+"</div>":"",g=this.options.liveSearch?'<div class="bs-searchbox"><input type="text" class="input-block-level form-control" autocomplete="off" /></div>':"",h=this.options.actionsBox?'<div class="bs-actionsbox"><div class="btn-group btn-block"><button class="actions-btn bs-select-all btn btn-sm btn-default">'+this.options.selectAllText+'</button><button class="actions-btn bs-deselect-all btn btn-sm btn-default">'+this.options.deselectAllText+"</button></div></div>":"",i='<div class="btn-group bootstrap-select'+b+c+'"><button type="button" class="btn dropdown-toggle selectpicker'+e+'" data-toggle="dropdown"'+d+'><span class="filter-option pull-left"></span>&nbsp;<span class="caret"></span></button><div class="dropdown-menu open">'+f+g+h+'<ul class="dropdown-menu inner selectpicker" role="menu"></ul></div></div>';return a(i)},createView:function(){var a=this.createDropdown(),b=this.createLi();return a.find("ul").append(b),a},reloadLi:function(){this.destroyLi();var a=this.createLi();this.$menu.find("ul").append(a)},destroyLi:function(){this.$menu.find("li").remove()},createLi:function(){var b=this,e=[],f=0,g=function(a,b,c){return"<li"+("undefined"!=typeof c?' class="'+c+'"':"")+("undefined"!=typeof b|null===b?' data-original-index="'+b+'"':"")+">"+a+"</li>"},h=function(a,e,f,g){var h=c(d(a));return'<a tabindex="0"'+("undefined"!=typeof e?' class="'+e+'"':"")+("undefined"!=typeof f?' style="'+f+'"':"")+("undefined"!=typeof g?'data-optgroup="'+g+'"':"")+' data-normalized-text="'+h+'">'+a+'<span class="'+b.options.iconBase+" "+b.options.tickIcon+' check-mark"></span></a>'};return this.$element.find("option").each(function(){var c=a(this),d=c.attr("class")||"",i=c.attr("style"),j=c.data("content")?c.data("content"):c.html(),k="undefined"!=typeof c.data("subtext")?'<small class="muted text-muted">'+c.data("subtext")+"</small>":"",l="undefined"!=typeof c.data("icon")?'<span class="'+b.options.iconBase+" "+c.data("icon")+'"></span> ':"",m=c.is(":disabled")||c.parent().is(":disabled"),n=c[0].index;if(""!==l&&m&&(l="<span>"+l+"</span>"),c.data("content")||(j=l+'<span class="text">'+j+k+"</span>"),!b.options.hideDisabled||!m)if(c.parent().is("optgroup")&&c.data("divider")!==!0){if(0===c.index()){f+=1;var o=c.parent().attr("label"),p="undefined"!=typeof c.parent().data("subtext")?'<small class="muted text-muted">'+c.parent().data("subtext")+"</small>":"",q=c.parent().data("icon")?'<span class="'+b.options.iconBase+" "+c.parent().data("icon")+'"></span> ':"";o=q+'<span class="text">'+o+p+"</span>",0!==n&&e.length>0&&e.push(g("",null,"divider")),e.push(g(o,null,"dropdown-header"))}e.push(g(h(j,"opt "+d,i,f),n))}else c.data("divider")===!0?e.push(g("",n,"divider")):c.data("hidden")===!0?e.push(g(h(j,d,i),n,"hide is-hidden")):e.push(g(h(j,d,i),n))}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),a(e.join(""))},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(b){var c=this;b!==!1&&this.$element.find("option").each(function(b){c.setDisabled(b,a(this).is(":disabled")||a(this).parent().is(":disabled")),c.setSelected(b,a(this).is(":selected"))}),this.tabIndex();var e=this.options.hideDisabled?":not([disabled])":"",f=this.$element.find("option:selected"+e).map(function(){var b,d=a(this),e=d.data("icon")&&c.options.showIcon?'<i class="'+c.options.iconBase+" "+d.data("icon")+'"></i> ':"";return b=c.options.showSubtext&&d.attr("data-subtext")&&!c.multiple?' <small class="muted text-muted">'+d.data("subtext")+"</small>":"",d.data("content")&&c.options.showContent?d.data("content"):"undefined"!=typeof d.attr("title")?d.attr("title"):e+d.html()+b}).toArray(),g=this.multiple?f.join(this.options.multipleSeparator):f[0];if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var h=this.options.selectedTextFormat.split(">");if(h.length>1&&f.length>h[1]||1==h.length&&f.length>=2){e=this.options.hideDisabled?", [disabled]":"";var i=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+e).length,j="function"==typeof this.options.countSelectedText?this.options.countSelectedText(f.length,i):this.options.countSelectedText;g=j.replace("{0}",f.length.toString()).replace("{1}",i.toString())}}this.options.title=this.$element.attr("title"),"static"==this.options.selectedTextFormat&&(g=this.options.title),g||(g="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText),this.$button.attr("title",d(g)),this.$newElement.find(".filter-option").html(g)},setStyle:function(a,b){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|validate\[.*\]/gi,""));var c=a?a:this.options.style;"add"==b?this.$button.addClass(c):"remove"==b?this.$button.removeClass(c):(this.$button.removeClass(this.options.style),this.$button.addClass(c))},liHeight:function(){if(this.options.size!==!1){var a=this.$menu.parent().clone().find("> .dropdown-toggle").prop("autofocus",!1).end().appendTo("body"),b=a.addClass("open").find("> .dropdown-menu"),c=b.find("li").not(".divider").not(".dropdown-header").filter(":visible").children("a").outerHeight(),d=this.options.header?b.find(".popover-title").outerHeight():0,e=this.options.liveSearch?b.find(".bs-searchbox").outerHeight():0,f=this.options.actionsBox?b.find(".bs-actionsbox").outerHeight():0;a.remove(),this.$newElement.data("liHeight",c).data("headerHeight",d).data("searchHeight",e).data("actionsHeight",f)}},setSize:function(){this.findLis();var b,c,d,e=this,f=this.$menu,g=f.find(".inner"),h=this.$newElement.outerHeight(),i=this.$newElement.data("liHeight"),j=this.$newElement.data("headerHeight"),k=this.$newElement.data("searchHeight"),l=this.$newElement.data("actionsHeight"),m=this.$lis.filter(".divider").outerHeight(!0),n=parseInt(f.css("padding-top"))+parseInt(f.css("padding-bottom"))+parseInt(f.css("border-top-width"))+parseInt(f.css("border-bottom-width")),o=this.options.hideDisabled?", .disabled":"",p=a(window),q=n+parseInt(f.css("margin-top"))+parseInt(f.css("margin-bottom"))+2,r=function(){c=e.$newElement.offset().top-p.scrollTop(),d=p.height()-c-h};if(r(),this.options.header&&f.css("padding-top",0),"auto"==this.options.size){var s=function(){var a,h=e.$lis.not(".hide");r(),b=d-q,e.options.dropupAuto&&e.$newElement.toggleClass("dropup",c>d&&b-q<f.height()),e.$newElement.hasClass("dropup")&&(b=c-q),a=h.length+h.filter(".dropdown-header").length>3?3*i+q-2:0,f.css({"max-height":b+"px",overflow:"hidden","min-height":a+j+k+l+"px"}),g.css({"max-height":b-j-k-l-n+"px","overflow-y":"auto","min-height":Math.max(a-n,0)+"px"})};s(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",s),a(window).off("resize.getSize").on("resize.getSize",s),a(window).off("scroll.getSize").on("scroll.getSize",s)}else if(this.options.size&&"auto"!=this.options.size&&f.find("li"+o).length>this.options.size){var t=this.$lis.not(".divider"+o).find(" > *").slice(0,this.options.size).last().parent().index(),u=this.$lis.slice(0,t+1).filter(".divider").length;b=i*this.options.size+u*m+n,e.options.dropupAuto&&this.$newElement.toggleClass("dropup",c>d&&b<f.height()),f.css({"max-height":b+j+k+l+"px",overflow:"hidden"}),g.css({"max-height":b-n+"px","overflow-y":"auto"})}},setWidth:function(){if("auto"==this.options.width){this.$menu.css("min-width","0");var a=this.$newElement.clone().appendTo("body"),b=a.find("> .dropdown-menu").css("width"),c=a.css("width","auto").find("> button").css("width");a.remove(),this.$newElement.css("width",Math.max(parseInt(b),parseInt(c))+"px")}else"fit"==this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width",""));this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement.removeClass("fit-width")},selectPosition:function(){var b,c,d=this,e="<div />",f=a(e),g=function(a){f.addClass(a.attr("class").replace(/form-control/gi,"")).toggleClass("dropup",a.hasClass("dropup")),b=a.offset(),c=a.hasClass("dropup")?0:a[0].offsetHeight,f.css({top:b.top+c,left:b.left,width:a[0].offsetWidth,position:"absolute"})};this.$newElement.on("click",function(){d.isDisabled()||(g(a(this)),f.appendTo(d.options.container),f.toggleClass("open",!a(this).hasClass("open")),f.append(d.$menu))}),a(window).resize(function(){g(d.$newElement)}),a(window).on("scroll",function(){g(d.$newElement)}),a("html").on("click",function(b){a(b.target).closest(d.$newElement).length<1&&f.removeClass("open")})},setSelected:function(a,b){this.findLis(),this.$lis.filter('[data-original-index="'+a+'"]').toggleClass("selected",b)},setDisabled:function(a,b){this.findLis(),b?this.$lis.filter('[data-original-index="'+a+'"]').addClass("disabled").find("a").attr("href","#").attr("tabindex",-1):this.$lis.filter('[data-original-index="'+a+'"]').removeClass("disabled").find("a").removeAttr("href").attr("tabindex",0)},isDisabled:function(){return this.$element.is(":disabled")},checkDisabled:function(){var a=this;this.isDisabled()?this.$button.addClass("disabled").attr("tabindex",-1):(this.$button.hasClass("disabled")&&this.$button.removeClass("disabled"),-1==this.$button.attr("tabindex")&&(this.$element.data("tabindex")||this.$button.removeAttr("tabindex"))),this.$button.click(function(){return!a.isDisabled()})},tabIndex:function(){this.$element.is("[tabindex]")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex")))},clickListener:function(){var b=this;this.$newElement.on("touchstart.dropdown",".dropdown-menu",function(a){a.stopPropagation()}),this.$newElement.on("click",function(){b.setSize(),b.options.liveSearch||b.multiple||setTimeout(function(){b.$menu.find(".selected a").focus()},10)}),this.$menu.on("click","li a",function(c){var d=a(this),e=d.parent().data("originalIndex"),f=b.$element.val(),g=b.$element.prop("selectedIndex");if(b.multiple&&c.stopPropagation(),c.preventDefault(),!b.isDisabled()&&!d.parent().hasClass("disabled")){var h=b.$element.find("option"),i=h.eq(e),j=i.prop("selected"),k=i.parent("optgroup"),l=b.options.maxOptions,m=k.data("maxOptions")||!1;if(b.multiple){if(i.prop("selected",!j),b.setSelected(e,!j),d.blur(),l!==!1||m!==!1){var n=l<h.filter(":selected").length,o=m<k.find("option:selected").length;if(l&&n||m&&o)if(l&&1==l)h.prop("selected",!1),i.prop("selected",!0),b.$menu.find(".selected").removeClass("selected"),b.setSelected(e,!0);else if(m&&1==m){k.find("option:selected").prop("selected",!1),i.prop("selected",!0);var p=d.data("optgroup");b.$menu.find(".selected").has('a[data-optgroup="'+p+'"]').removeClass("selected"),b.setSelected(e,!0)}else{var q="function"==typeof b.options.maxOptionsText?b.options.maxOptionsText(l,m):b.options.maxOptionsText,r=q[0].replace("{n}",l),s=q[1].replace("{n}",m),t=a('<div class="notify"></div>');q[2]&&(r=r.replace("{var}",q[2][l>1?0:1]),s=s.replace("{var}",q[2][m>1?0:1])),i.prop("selected",!1),b.$menu.append(t),l&&n&&(t.append(a("<div>"+r+"</div>")),b.$element.trigger("maxReached.bs.select")),m&&o&&(t.append(a("<div>"+s+"</div>")),b.$element.trigger("maxReachedGrp.bs.select")),setTimeout(function(){b.setSelected(e,!1)},10),t.delay(750).fadeOut(300,function(){a(this).remove()})}}}else h.prop("selected",!1),i.prop("selected",!0),b.$menu.find(".selected").removeClass("selected"),b.setSelected(e,!0);b.multiple?b.options.liveSearch&&b.$searchbox.focus():b.$button.focus(),(f!=b.$element.val()&&b.multiple||g!=b.$element.prop("selectedIndex")&&!b.multiple)&&b.$element.change()}}),this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(a){a.target==this&&(a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus())}),this.$menu.on("click","li.divider, li.dropdown-header",function(a){a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus()}),this.$menu.on("click",".popover-title .close",function(){b.$button.focus()}),this.$searchbox.on("click",function(a){a.stopPropagation()}),this.$menu.on("click",".actions-btn",function(c){b.options.liveSearch?b.$searchbox.focus():b.$button.focus(),c.preventDefault(),c.stopPropagation(),a(this).is(".bs-select-all")?b.selectAll():b.deselectAll(),b.$element.change()}),this.$element.change(function(){b.render(!1)})},liveSearchListener:function(){var b=this,e=a('<li class="no-results"></li>');this.$newElement.on("click.dropdown.data-api touchstart.dropdown.data-api",function(){b.$menu.find(".active").removeClass("active"),b.$searchbox.val()&&(b.$searchbox.val(""),b.$lis.not(".is-hidden").removeClass("hide"),e.parent().length&&e.remove()),b.multiple||b.$menu.find(".selected").addClass("active"),setTimeout(function(){b.$searchbox.focus()},10)}),this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(a){a.stopPropagation()}),this.$searchbox.on("input propertychange",function(){b.$searchbox.val()?(b.options.searchAccentInsensitive?b.$lis.not(".is-hidden").removeClass("hide").find("a").not(":aicontains("+c(b.$searchbox.val())+")").parent().addClass("hide"):b.$lis.not(".is-hidden").removeClass("hide").find("a").not(":icontains("+b.$searchbox.val()+")").parent().addClass("hide"),b.$menu.find("li").filter(":visible:not(.no-results)").length?e.parent().length&&e.remove():(e.parent().length&&e.remove(),e.html(b.options.noneResultsText+' "'+d(b.$searchbox.val())+'"').show(),b.$menu.find("li").last().after(e))):(b.$lis.not(".is-hidden").removeClass("hide"),e.parent().length&&e.remove()),b.$menu.find("li.active").removeClass("active"),b.$menu.find("li").filter(":visible:not(.divider)").eq(0).addClass("active").find("a").focus(),a(this).focus()})},val:function(a){return"undefined"!=typeof a?(this.$element.val(a),this.render(),this.$element):this.$element.val()},selectAll:function(){this.findLis(),this.$lis.not(".divider").not(".disabled").not(".selected").filter(":visible").find("a").click()},deselectAll:function(){this.findLis(),this.$lis.not(".divider").not(".disabled").filter(".selected").filter(":visible").find("a").click()},keydown:function(b){var d,e,f,g,h,i,j,k,l,m=a(this),n=m.is("input")?m.parent().parent():m.parent(),o=n.data("this"),p={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};if(o.options.liveSearch&&(n=m.parent().parent()),o.options.container&&(n=o.$menu),d=a("[role=menu] li a",n),l=o.$menu.parent().hasClass("open"),!l&&/([0-9]|[A-z])/.test(String.fromCharCode(b.keyCode))&&(o.options.container?o.$newElement.trigger("click"):(o.setSize(),o.$menu.parent().addClass("open"),l=!0),o.$searchbox.focus()),o.options.liveSearch&&(/(^9$|27)/.test(b.keyCode.toString(10))&&l&&0===o.$menu.find(".active").length&&(b.preventDefault(),o.$menu.parent().removeClass("open"),o.$button.focus()),d=a("[role=menu] li:not(.divider):not(.dropdown-header):visible",n),m.val()||/(38|40)/.test(b.keyCode.toString(10))||0===d.filter(".active").length&&(d=o.options.searchAccentInsensitive?o.$newElement.find("li").filter(":aicontains("+c(p[b.keyCode])+")"):o.$newElement.find("li").filter(":icontains("+p[b.keyCode]+")"))),d.length){if(/(38|40)/.test(b.keyCode.toString(10)))e=d.index(d.filter(":focus")),g=d.parent(":not(.disabled):visible").first().index(),h=d.parent(":not(.disabled):visible").last().index(),f=d.eq(e).parent().nextAll(":not(.disabled):visible").eq(0).index(),i=d.eq(e).parent().prevAll(":not(.disabled):visible").eq(0).index(),j=d.eq(f).parent().prevAll(":not(.disabled):visible").eq(0).index(),o.options.liveSearch&&(d.each(function(b){a(this).is(":not(.disabled)")&&a(this).data("index",b)}),e=d.index(d.filter(".active")),g=d.filter(":not(.disabled):visible").first().data("index"),h=d.filter(":not(.disabled):visible").last().data("index"),f=d.eq(e).nextAll(":not(.disabled):visible").eq(0).data("index"),i=d.eq(e).prevAll(":not(.disabled):visible").eq(0).data("index"),j=d.eq(f).prevAll(":not(.disabled):visible").eq(0).data("index")),k=m.data("prevIndex"),38==b.keyCode&&(o.options.liveSearch&&(e-=1),e!=j&&e>i&&(e=i),g>e&&(e=g),e==k&&(e=h)),40==b.keyCode&&(o.options.liveSearch&&(e+=1),-1==e&&(e=0),e!=j&&f>e&&(e=f),e>h&&(e=h),e==k&&(e=g)),m.data("prevIndex",e),o.options.liveSearch?(b.preventDefault(),m.is(".dropdown-toggle")||(d.removeClass("active"),d.eq(e).addClass("active").find("a").focus(),m.focus())):d.eq(e).focus();else if(!m.is("input")){var q,r,s=[];d.each(function(){a(this).parent().is(":not(.disabled)")&&a.trim(a(this).text().toLowerCase()).substring(0,1)==p[b.keyCode]&&s.push(a(this).parent().index())}),q=a(document).data("keycount"),q++,a(document).data("keycount",q),r=a.trim(a(":focus").text().toLowerCase()).substring(0,1),r!=p[b.keyCode]?(q=1,a(document).data("keycount",q)):q>=s.length&&(a(document).data("keycount",0),q>s.length&&(q=1)),d.eq(s[q-1]).focus()}(/(13|32)/.test(b.keyCode.toString(10))||/(^9$)/.test(b.keyCode.toString(10))&&o.options.selectOnTab)&&l&&(/(32)/.test(b.keyCode.toString(10))||b.preventDefault(),o.options.liveSearch?/(32)/.test(b.keyCode.toString(10))||(o.$menu.find(".active a").click(),m.focus()):a(":focus").click(),a(document).data("keycount",0)),(/(^9$|27)/.test(b.keyCode.toString(10))&&l&&(o.multiple||o.options.liveSearch)||/(27)/.test(b.keyCode.toString(10))&&!l)&&(o.$menu.parent().removeClass("open"),o.$button.focus())}},mobile:function(){this.$element.addClass("mobile-device").appendTo(this.$newElement),this.options.container&&this.$menu.hide()},refresh:function(){this.$lis=null,this.reloadLi(),this.render(),this.setWidth(),this.setStyle(),this.checkDisabled(),this.liHeight()},update:function(){this.reloadLi(),this.setWidth(),this.setStyle(),this.checkDisabled(),this.liHeight()},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()}};var g=a.fn.selectpicker;a.fn.selectpicker=e,a.fn.selectpicker.Constructor=f,a.fn.selectpicker.noConflict=function(){return a.fn.selectpicker=g,this},a(document).data("keycount",0).on("keydown",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",f.prototype.keydown).on("focusin.modal",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",function(a){a.stopPropagation()}),a(window).on("load.bs.select.data-api",function(){a(".selectpicker").each(function(){var b=a(this);e.call(b,b.data())})})}(jQuery),jQuery(document).ready(function(){jQuery(".color-picker-field").length&&(jQuery(".color-picker-field").wpColorPicker(),jQuery(".meta-box-sortables").sortable({disabled:!0}),jQuery(".postbox .hndle").css("cursor","pointer"))});
lib/admin/js/min/timeline-express-tinymce.min.js CHANGED
@@ -2,14 +2,7 @@
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
- */
8
- /*
9
- * @Plugin Timeline Express
10
- * @Author Code Parrots
11
- * @Site https://www.wp-timelineexpress.com
12
- * @Version 1.2.8.4
13
- * @Build 09-14-2016
14
  */
15
  !function(){tinymce.PluginManager.add("timeline_express",function(a,b){function c(){this.disabled(!this.disabled()),a.insertContent("[timeline-express]")}a.on("keyup",function(){a.getContent().indexOf("[timeline-express]")>-1?a.controlManager.setDisabled("timeline_express_shortcode_button",!0):a.controlManager.setDisabled("timeline_express_shortcode_button",!1)}),a.addButton("timeline_express_shortcode_button",{title:"Timeline Express Shortcode",text:!1,image:b+"/../../images/timeline-express-menu-icon.png",onclick:c}),a.onSetContent.add(function(a,b){a.getContent().indexOf("[timeline-express]")>-1&&a.controlManager.setDisabled("timeline_express_shortcode_button",!0)})})}();
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
 
 
 
 
 
 
 
7
  */
8
  !function(){tinymce.PluginManager.add("timeline_express",function(a,b){function c(){this.disabled(!this.disabled()),a.insertContent("[timeline-express]")}a.on("keyup",function(){a.getContent().indexOf("[timeline-express]")>-1?a.controlManager.setDisabled("timeline_express_shortcode_button",!0):a.controlManager.setDisabled("timeline_express_shortcode_button",!1)}),a.addButton("timeline_express_shortcode_button",{title:"Timeline Express Shortcode",text:!1,image:b+"/../../images/timeline-express-menu-icon.png",onclick:c}),a.onSetContent.add(function(a,b){a.getContent().indexOf("[timeline-express]")>-1&&a.controlManager.setDisabled("timeline_express_shortcode_button",!0)})})}();
lib/helpers.php CHANGED
@@ -5,26 +5,31 @@
5
  *
6
  * @link http://www.codeparrots.com
7
  *
8
- * @package WordPress
9
- * @subpackage Component
10
  * @since 1.2
11
  */
 
12
  /**
13
  * Custom CMB2 callback and sanitization functions
14
  *
15
  * @since 1.2
16
  */
 
17
  /* Render custom date_time_stamp field */
18
  add_action( 'cmb2_render_te_date_time_stamp_custom', 'cmb2_render_te_date_time_stamp_custom', 10, 5 );
 
19
  /* Render content in the timeline express addon advertisments metabox */
20
  add_action( 'cmb2_render_te_advert_metabox', 'cmb2_render_callback_te_advert_metabox', 10, 5 );
 
21
  /* Render content in the help & doc metabox */
22
  add_action( 'cmb2_render_te_help_docs_metabox', 'cmb2_render_callback_te_help_docs_metabox', 10, 5 );
 
23
  /* Render custom bootstrap icons dropdown field */
24
  add_action( 'cmb2_render_te_bootstrap_dropdown', 'cmb2_render_callback_te_bootstrap_dropdown', 10, 5 );
25
 
26
  /* Sanitize custom date_time_stamp field */
27
  add_filter( 'cmb2_sanitize_te_date_time_stamp_custom', 'cmb2_sanitize_te_date_time_stamp_custom_callback', 10, 2 );
 
28
  /* Sanitize custom bootstrap icons dropdown field */
29
  add_filter( 'cmb2_sanitize_te_bootstrap_dropdown', 'cmb2_validate_te_bootstrap_dropdown_callback', 10, 2 );
30
 
@@ -48,6 +53,7 @@ add_action( 'timeline_express_sidebar', 'timeline_express_generate_sidebar', 10
48
  * @return plugin options or defaults if not set
49
  */
50
  function timeline_express_get_options() {
 
51
  return get_option( TIMELINE_EXPRESS_OPTION, array(
52
  'announcement-time-frame' => '1',
53
  'announcement-display-order' => 'ASC',
@@ -66,6 +72,7 @@ function timeline_express_get_options() {
66
  'delete-announcement-posts-on-uninstallation' => 0,
67
  'version' => TIMELINE_EXPRESS_VERSION_CURRENT,
68
  ) );
 
69
  }
70
 
71
 
@@ -75,7 +82,9 @@ function timeline_express_get_options() {
75
  * @since 1.2
76
  */
77
  function timeline_express_announcement_metaboxes() {
 
78
  require_once TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/metaboxes.announcements.php';
 
79
  }
80
 
81
  /**
@@ -92,10 +101,13 @@ function timeline_express_announcement_metaboxes() {
92
  *
93
  * @param int $field field to render.
94
  * @param int/string $escaped_value stored value for this field.
 
95
  * @since v1.1.5.7
96
  */
97
  function cmb2_render_callback_te_bootstrap_dropdown( $field, $escaped_value ) {
 
98
  timeline_express_build_bootstrap_icon_dropdown( $field, $escaped_value );
 
99
  }
100
 
101
  /**
@@ -107,54 +119,67 @@ function cmb2_render_callback_te_bootstrap_dropdown( $field, $escaped_value ) {
107
  * @param type $object_id this specific fields id.
108
  * @param type $object_type the type for this field.
109
  * @param type $field_type_object the entire field object.
 
110
  * @since v1.1.5.7
111
  */
112
  function cmb2_render_te_date_time_stamp_custom( $field, $meta, $object_id, $object_type, $field_type_object ) {
 
113
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/time-stamp-custom.php' );
 
114
  }
115
 
116
  /**
117
  * Render the custom 'Advertisment' metabox.
118
  *
119
- * @since v1.1.5
120
- *
121
  * @param int $field field to render.
122
  * @param int/string $meta stored value for this field.
123
  * @param type $object_id this specific fields id.
124
  * @param type $object_type the type for this field.
125
  * @param type $field_type_object the entire field object.
 
 
126
  */
127
  function cmb2_render_callback_te_advert_metabox( $field, $meta, $object_id, $object_type, $field_type_object ) {
 
128
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/advertisment-metabox.php' );
 
129
  }
130
 
131
  /**
132
  * Render the custom 'Help & Documentation' metabox.
133
  *
134
- * @since v1.1.5
135
- *
136
  * @param int $field field to render.
137
  * @param int/string $meta stored value for this field.
138
  * @param type $object_id this specific fields id.
139
  * @param type $object_type the type for this field.
140
  * @param type $field_type_object the entire field object.
 
 
141
  */
142
  function cmb2_render_callback_te_help_docs_metabox( $field, $meta, $object_id, $object_type, $field_type_object ) {
 
143
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/help-docs-metabox.php' );
 
144
  }
145
 
146
  /**
147
  * Custom sanitization function for our custom time stamp field.
148
  *
 
 
 
149
  * @since @v1.1.5
150
- * @param int $value UNIX time stamp value stored in the database.
151
- * @param int $new new UNIX time stamp value to store in the database.
152
  */
153
  function cmb2_sanitize_te_date_time_stamp_custom_callback( $value, $new ) {
 
154
  if ( isset( $new ) && ! empty( $new ) ) {
 
155
  $date_object = date_create_from_format( get_option( 'date_format' ), $new );
 
156
  return $date_object ? apply_filters( 'timeline_express_sanitize_date_format', $date_object->setTime( 0, 0, 0 )->getTimeStamp(), $new ) : apply_filters( 'timeline_express_sanitize_date_format', strtotime( $new ), $new );
 
157
  }
 
158
  /* If all else fails, return current date/time UNIX time stamp */
159
  return strtotime( 'now' );
160
  }
@@ -162,14 +187,19 @@ function cmb2_sanitize_te_date_time_stamp_custom_callback( $value, $new ) {
162
  /**
163
  * Custom sanitization function for our custom time stamp field.
164
  *
 
 
 
165
  * @since @v1.1.5
166
- * @param string $override_value -.
167
- * @param string $value new icon value to store in the database.
168
  */
169
  function cmb2_validate_te_bootstrap_dropdown_callback( $override_value, $value ) {
 
170
  if ( isset( $value ) && ! empty( $value ) ) {
 
171
  return 'fa-' . trim( $value );
 
172
  }
 
173
  return '';
174
  }
175
 
@@ -180,66 +210,94 @@ function cmb2_validate_te_bootstrap_dropdown_callback( $override_value, $value )
180
  * @since v1.1.5.7
181
  */
182
  function timeline_express_enqueue_font_awesome() {
 
183
  $font_awesome_version = apply_filters( 'timeline_express_font_awesome_version', '4.6.1' );
 
184
  $http = ( is_ssl() ) ? 'https:' : 'http:';
 
185
  /* Check if CDN is reachable, if so - get em' */
186
  if ( wp_remote_get( $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.css' ) ) {
 
187
  /* Enqueue font awesome for use in column display */
188
  wp_enqueue_style( 'font-awesome', $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.min.css', array(), $font_awesome_version );
 
189
  } else {
 
190
  /* If not, load the local version */
191
  wp_enqueue_style( 'font-awesome', TIMELINE_EXPRESS_URL . 'lib/icons/css/font-awesome.min.css', array(), $font_awesome_version );
 
192
  }
 
193
  }
194
 
195
  /**
196
  * Construct a dropdown for our bootstrap icons.
197
  *
198
- * @param string $field the field type being displayed.
199
- * @param string $meta the stored value in the database.
 
200
  * @since v1.1.5.7
201
  */
202
  function timeline_express_build_bootstrap_icon_dropdown( $field, $meta ) {
 
203
  $screen = get_current_screen();
 
204
  $screen_base = $screen->base;
 
205
  $http = ( is_ssl() ) ? 'https:' : 'http:';
 
206
  $font_awesome_version = apply_filters( 'timeline_express_font_awesome_version', '4.6.1' );
207
 
208
  // Store our response in a transient for faster page loading.
209
  if ( false === ( $response = get_transient( 'te_font_awesome_transient' ) ) ) {
 
210
  // Retreive the icons out of the css file.
211
  $response = wp_remote_get( $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.css' );
 
212
  if ( is_wp_error( $response ) ) {
 
213
  // Load font awesome locally.
214
  $response = wp_remote_get( TIMELINE_EXPRESS_URL . 'lib/icons/css/font-awesome.css' );
 
215
  }
 
216
  // It wasn't there, so regenerate the data and save the transient.
217
  set_transient( 'te_font_awesome_transient', $response, 12 * HOUR_IN_SECONDS );
 
218
  }
219
 
220
  /* If the response body is empty, abort */
221
  if ( empty( $response['body'] ) || ! isset( $response['body'] ) ) {
 
222
  return printf( '<em>' . esc_attr__( 'There was an error processing the bootstrap icons.', 'timeline-express' ) . '</em>' );
 
223
  }
224
 
225
  // Extract the icons from the stylesheet
226
  $pattern = '/\.(fa-(?:\w+(?:-)?)+):before\s+{\s*content:\s*"(.+)";\s+}/';
 
227
  preg_match_all( $pattern, $response['body'], $matches, PREG_SET_ORDER );
228
 
229
  $icons = array();
 
230
  foreach ( $matches as $match ) {
 
231
  $icons[ str_replace( 'fa-', '', $match[1] ) ] = $match[2];
 
232
  }
233
  ?>
234
 
235
  <script>
236
  jQuery( document ).ready( function() {
 
237
  jQuery('.selectpicker').selectpicker({
238
  style: 'btn-info',
239
  size: 6
240
  });
 
241
  });
242
  </script>
 
243
  <style>
244
  .dropdown-toggle { background: transparent !important; border: 1px solid rgb(201, 201, 201) !important; }
245
  .dropdown-toggle .caret { border-top-color: #333 !important; }
@@ -249,9 +307,13 @@ function timeline_express_build_bootstrap_icon_dropdown( $field, $meta ) {
249
  <?php
250
  // Check which page were on, set name appropriately.
251
  if ( isset( $field->args['id'] ) ) {
 
252
  $field_name = $field->args['id'];
 
253
  } else {
 
254
  $field_name = esc_attr( $field['id'] );
 
255
  }
256
  ?>
257
 
@@ -259,10 +321,14 @@ function timeline_express_build_bootstrap_icon_dropdown( $field, $meta ) {
259
  <select class="selectpicker" name="<?php echo esc_attr( $field_name ); ?>" id="default-announcement-icon" name="<?php echo esc_attr( $field_name ); ?>">
260
 
261
  <?php
 
262
  ksort( $icons );
 
263
  /* sort the bootstrap icons alphabetically */
264
  foreach ( $icons as $icon_name => $icon_content ) { ?>
 
265
  <option class="fa" data-icon="fa-<?php echo esc_attr( $icon_name ); ?>" <?php selected( 'fa-'.$icon_name , $meta ); ?>> <?php echo esc_attr( $icon_name ); ?> </option>
 
266
  <?php } ?>
267
 
268
  </select>
@@ -270,46 +336,65 @@ function timeline_express_build_bootstrap_icon_dropdown( $field, $meta ) {
270
 
271
  <?php
272
  if ( 'te_announcements_page_timeline-express-settings' !== $screen_base ) {
 
273
  echo '<p class="cmb2-metabox-description">' . esc_html( $field->args['desc'] ) . '</p>';
 
274
  }
 
275
  }
276
 
277
  /**
278
- * Include a Timeline Express template
279
- * @param string $template_name Template name to load
280
- * @return null Include the template needed
 
 
 
281
  * @since 1.2
282
  */
283
  function get_timeline_express_template( $template_name = 'timeline-container' ) {
 
284
  /**
285
  * Switch over the template name, return template
286
  * - Check if a file exists locally (theme root), and load it.
287
  * - Note: Users can create a directory (timeline-express), and copy over the announcement template into the theme root.
288
  */
289
  switch ( $template_name ) {
 
290
  default:
291
  case 'timeline-container':
292
  $file_name = 'timeline-express-container';
293
  break;
 
294
  case 'single-announcement':
295
  $file_name = 'single-timeline-express-content';
296
  break;
 
297
  case 'page-wrappers-start':
298
  $file_name = 'timeline-express-page-wrappers-start';
299
  break;
 
300
  case 'page-wrappers-end':
301
  $file_name = 'timeline-express-page-wrappers-end';
302
  break;
 
303
  case 'timeline-express-sidebar':
304
  $file_name = 'timeline-express-sidebar';
305
  break;
 
306
  }
 
307
  // check for and load file
308
  if ( file_exists( get_stylesheet_directory() . '/timeline-express/' . $file_name . '.php' ) ) {
 
309
  include( get_stylesheet_directory() . '/timeline-express/' . $file_name . '.php' );
 
310
  return;
 
311
  }
 
312
  include( TIMELINE_EXPRESS_PATH . 'lib/public/partials/' . $file_name . '.php' );
 
313
  }
314
 
315
  /**
@@ -317,36 +402,53 @@ function get_timeline_express_template( $template_name = 'timeline-container' )
317
  * This is redundant, but will be easier for our users to use in their themes
318
  */
319
  function timeline_express_content() {
 
320
  // check for and load file
321
  if ( file_exists( get_stylesheet_directory() . '/timeline-express/single-timeline-express-content.php' ) ) {
 
322
  include( get_stylesheet_directory() . '/timeline-express/single-timeline-express-content.php' );
 
323
  return;
 
324
  }
 
325
  include( TIMELINE_EXPRESS_PATH . 'lib/public/partials/single-timeline-express-content.php' );
 
326
  }
327
 
328
  /**
329
  * Helper function used to clear out the timeline express transients
330
  * This is fired when the settings are saved, and when an announcement is updated/published
 
331
  * @param integer $page_id The page ID to delete transients for
 
332
  * @since 1.2
333
  */
334
  function delete_timeline_express_transients( $page_id = false ) {
 
335
  $transient_name = ( $page_id ) ? 'timeline-express-query-' . $page_id : 'timeline-express-query';
 
336
  global $wpdb;
 
337
  // Query the database for all transients with the text 'timeline-express-query'
338
  $results = $wpdb->get_results(
339
  $wpdb->prepare(
340
  "SELECT * from `{$wpdb->prefix}options` WHERE option_name LIKE %s;", '%' . $wpdb->esc_like( $transient_name ) . '%'
341
  )
342
  );
 
343
  // if we have some results, continue
344
  if ( $results && ! empty( $results ) ) {
 
345
  // loop and delete our transient
346
  foreach ( $results as $transient ) {
 
347
  delete_transient( str_replace( '_transient_', '', $transient->option_name ) );
 
348
  }
 
349
  }
 
350
  }
351
 
352
  /**
@@ -354,85 +456,134 @@ function delete_timeline_express_transients( $page_id = false ) {
354
  * if it does not, include our class file.
355
  */
356
  function does_timeline_express_init_class_exist() {
 
357
  if ( class_exists( 'Timeline_Express_Initialize' ) ) {
 
358
  return;
 
359
  }
 
360
  include TIMELINE_EXPRESS_PATH . 'lib/classes/class.timeline-express-initialize.php';
 
361
  }
362
 
363
  /**
364
  * Get the full icon HTML markup
365
- * @param int $post_id The announcement ID to retreive the icon from
366
- * @return string The HTML markup to return
 
 
367
  */
368
  function timeline_express_get_announcement_icon_markup( $post_id ) {
 
369
  $timeline_express_options = timeline_express_get_options();
 
370
  $custom_icon_html = apply_filters( 'timeline_express_custom_icon_html', apply_filters( 'timeline-express-custom-icon-html', false, $post_id, $timeline_express_options ), $post_id, $timeline_express_options );
 
371
  /* Generate the Icon */
372
  if ( $custom_icon_html ) {
 
373
  return $custom_icon_html;
 
374
  }
 
375
  /* If read more visibility is set to true, wrap the icon in a link. */
376
  if ( '1' === $timeline_express_options['read-more-visibility'] ) { ?>
 
377
  <a class="cd-timeline-icon-link" href="<?php echo esc_attr( apply_filters( 'timeline-express-read-more-link', esc_url( get_the_permalink( $post_id ) ) ) ); ?>">
 
378
  <?php } ?>
 
379
  <div class="cd-timeline-img cd-picture" style="background:<?php esc_attr_e( timeline_express_get_announcement_icon_color( $post_id ) ); ?>;">
 
380
  <!-- Custom Action Hook -->
381
  <?php if ( defined( 'TIMELINE_EXPRESS_YEAR_ICONS' ) && TIMELINE_EXPRESS_YEAR_ICONS ) { ?>
 
382
  <!-- Standard Font Awesome Icon -->
383
  <span class="year">
 
384
  <strong>
385
- <?php echo esc_attr( date( 'Y', strtotime( timeline_express_get_announcement_date( $post_id ) ) ) ); ?>
 
 
386
  </strong>
 
387
  </span>
 
388
  <?php } else { ?>
 
389
  <!-- Standard Font Awesome Icon -->
390
  <span class="fa <?php esc_attr_e( timeline_express_get_announcement_icon( $post_id ) ); ?>" title="<?php esc_attr_e( get_the_title( $post_id ) ); ?>"></span>
 
391
  <?php } ?>
 
392
  </div> <!-- cd-timeline-img -->
 
393
  <?php
 
394
  /* If read more visibility is set to true, wrap the icon in a link. */
395
  if ( '1' === $timeline_express_options['read-more-visibility'] ) { ?>
 
396
  </a>
 
397
  <?php }
 
398
  }
399
 
400
  /**
401
  * Get the announcement icon chosen in the dropdown
402
- * @param int $post_id The announcement ID to retreive the icon from
403
- * @return string The announcement icon to use
 
 
404
  */
405
  function timeline_express_get_announcement_icon( $post_id ) {
 
406
  return apply_filters( 'timeline_express_icon', get_post_meta( $post_id, 'announcement_icon', true ), $post_id );
 
407
  }
408
 
409
  /**
410
  * Get the announcement color chosen on the announcement edit page
411
- * @param int $post_id The announcement ID to retreive the color from
412
- * @return string The announcement color to use behind the icon
 
 
413
  */
414
  function timeline_express_get_announcement_icon_color( $post_id ) {
 
415
  return apply_filters( 'timeline_express_icon_color', get_post_meta( $post_id, 'announcement_color', true ), $post_id );
 
416
  }
417
 
418
  /**
419
  * Retreive the timeline express announcement image
420
- * @param int $post_id The announcement (post) ID whos image you want to retreive.
421
- * @param string $image_size (optional) The image size to retreive.
422
- * @return Announcement image markup.
 
 
423
  */
424
  function timeline_express_get_announcement_image( $post_id, $image_size = 'timeline-express' ) {
 
425
  $image_size = apply_filters( 'timeline-express-announcement-img-size', $image_size, $post_id );
 
426
  /**
427
  * If on a single page announcement, return the srcset image - for proper responsive images
428
  * @since 1.2.7
429
  */
430
  if ( is_single() ) {
 
431
  $img_src = wp_get_attachment_image_url( get_post_meta( $post_id, 'announcement_image_id', true ), $image_size );
 
432
  $img_srcset = wp_get_attachment_image_srcset( get_post_meta( $post_id, 'announcement_image_id', true ), $image_size );
 
433
  ?><img class="announcement-banner-image" src="<?php echo esc_url( $img_src ); ?>" srcset="<?php echo esc_attr( $img_srcset ); ?>" sizes="(max-width: 100%) 75vw, 680px" alt="<?php esc_attr( get_the_title() ); ?>"><?php
 
434
  return;
 
435
  }
 
436
  /* Escaped on output in the timeline/single page */
437
  return apply_filters( 'timeline_express_image', wp_get_attachment_image(
438
  get_post_meta( $post_id, 'announcement_image_id', true ),
@@ -443,153 +594,226 @@ function timeline_express_get_announcement_image( $post_id, $image_size = 'timel
443
  'class' => 'announcement-banner-image',
444
  )
445
  ), $post_id );
 
446
  }
447
 
448
  /**
449
  * Retreive the timeline express announcement date
450
- * @param int $post_id The announcement (post) ID whos image you want to retreive.
451
- * @return string Execute the function to retreive the date.
 
 
452
  */
453
  function timeline_express_get_announcement_date( $post_id ) {
 
454
  $announcement_date = ( get_post_meta( $post_id, 'announcement_date', true ) ) ? get_post_meta( $post_id, 'announcement_date', true ) : strtotime( 'now' );
 
455
  return apply_filters( 'timeline_express_frontend_date_filter', date_i18n( apply_filters( 'timeline_express_custom_date_format', get_option( 'date_format' ) ), $announcement_date ), $post_id );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
456
  }
457
 
 
458
  /**
459
  * Get the announcement excerpt
 
460
  * @param int $post_id The announcement (post) ID whos excerpt you want to retreive.
 
461
  * @return string The announcement excerpt
462
  */
463
  function timeline_express_get_announcement_excerpt( $post_id ) {
 
464
  /* Setup the excerpt */
465
  return apply_filters( 'the_content', apply_filters( 'timeline_express_frontend_excerpt', get_the_excerpt(), $post_id ) );
 
466
  }
467
 
468
  /**
469
  * Setup a custom or random excerpt length based on the options set in the settings
 
470
  * @return string The announcement excerpt
 
471
  * @since 1.2
472
  */
473
- add_filter( 'excerpt_length', 'timeline_express_custom_excerpt_length', 999 );
474
  function timeline_express_custom_excerpt_length( $length ) {
 
475
  global $post;
 
476
  // if not an announcement post, abort
477
  if ( 'te_announcements' !== get_post_type( $post ) ) {
 
478
  return $length;
 
479
  }
 
480
  $timeline_express_options = timeline_express_get_options();
 
481
  if ( 1 === $timeline_express_options['excerpt-random-length'] ) {
 
482
  $random_length = (int) rand( apply_filters( 'timeline_express_random_excerpt_min', 50 ), apply_filters( 'timeline_express_random_excerpt_max', 200 ) );
 
483
  return (int) $random_length;
 
484
  }
 
485
  return (int) apply_filters( 'timeline_express_excerpt_length', $timeline_express_options['excerpt-trim-length'] );
 
486
  }
 
487
 
488
  /**
489
  * Trim the excerpt and add ellipses to the end fo it
490
- * @param string $more The default HTML markup for the read more link.
 
 
491
  * @since 1.2
492
  */
493
- add_filter( 'excerpt_more', 'timeline_express_custom_read_more', 999 );
494
  function timeline_express_custom_read_more( $more ) {
 
495
  global $post;
 
496
  $timeline_express_options = timeline_express_get_options();
 
497
  // if not timeline post
498
  if ( 'te_announcements' !== get_post_type( $post ) ) {
 
499
  return $more;
 
500
  }
 
501
  // if read more visibility is set to hidden
502
  if ( '1' !== $timeline_express_options['read-more-visibility'] ) {
 
503
  return '';
 
504
  }
 
505
  // return the default
506
  return apply_filters( 'timeline_express_read_more_ellipses', '...' );
 
507
  }
 
508
 
509
  /**
510
  * Hook in and generate a read more link below each announcement
 
511
  * @return string HTML markup for the new read me link.
512
  */
513
- add_action( 'timeline-express-after-excerpt', 'timeline_express_custom_read_more_link', 10 );
514
  function timeline_express_custom_read_more_link() {
 
515
  global $post;
 
516
  $timeline_express_options = timeline_express_get_options();
 
517
  // if read more visibility is set to hidden
518
  if ( '1' !== $timeline_express_options['read-more-visibility'] ) {
 
519
  return;
 
520
  }
 
521
  echo wp_kses_post( apply_filters( 'timeline_express_read_more_link', '<a class="' . esc_attr( apply_filters( 'timeline_express_read_more_class', 'timeline-express-read-more-link', $post->ID ) ) . '" href="'. apply_filters( 'timeline-express-read-more-link', esc_url( get_permalink( $post->ID ) ), $post->ID ) . '"> ' . esc_attr( apply_filters( 'timeline_express_read_more_text', __( 'Read more', 'timeline-express' ), $post->ID ) ) . '</a>', $post->ID ) );
 
522
  }
 
523
 
524
  /**
525
  * Generate an excerpt of random length
 
526
  * @param int $post_id The announcement ID to retreive the excerpt
 
527
  * @return string The announcement excerpt of random length
528
  */
529
  function timeline_express_generate_random_announcement( $post_id ) {
 
530
  return apply_filters( 'the_content', apply_filters( 'timeline_express_random_excerpt', get_the_excerpt(), $post_id ) );
 
531
  }
532
 
533
  /**
534
  * Retreive a custom, user defined, field object.
535
  * This is used after you define custom fields using the timeline_express_custom_fields filter.
536
  *
537
- * @param int $post_id The announcement (post) ID whos content you want to retreive.
538
- * @param string $meta_name The name of the meta field (id), whos value you want to retrieve.
539
- * @param bool $array True/False to return an array. Optional. Default: true.
540
- * @return array The announcement content, passed through the_content() filter.
 
541
  */
542
  function timeline_express_get_custom_meta( $post_id, $meta_name, $array = true ) {
 
543
  /* If no post id was passed in, abort */
544
  if ( ! $post_id ) {
 
545
  return esc_attr__( 'You forgot to include the announcement ID.', 'timeline-express' );
 
546
  }
 
547
  /* If no meta name was passed in, abort */
548
  if ( ! $meta_name ) {
 
549
  return esc_attr__( 'You forgot to include the meta key.', 'timeline-express' );
 
550
  }
 
551
  /* Return the post meta, or false if nothing was found */
552
  return ( get_post_meta( $post_id, $meta_name, $array ) ) ? get_post_meta( $post_id, $meta_name, $array ) : false;
 
553
  }
554
 
555
  if ( ! function_exists( 'timeline_express_generate_page_wrapper_start' ) ) {
556
-
557
  /**
558
  * Generate the Timeline Express beginning page wrappers
 
559
  * @return mixed
 
 
560
  */
561
  function timeline_express_generate_page_wrapper_start() {
562
 
563
  get_timeline_express_template( 'page-wrappers-start' );
564
 
565
  }
566
-
567
  }
568
 
569
  if ( ! function_exists( 'timeline_express_generate_page_wrapper_end' ) ) {
570
-
571
  /**
572
  * Generate the Timeline Express ending page wrappers
 
573
  * @return mixed
 
 
574
  */
575
  function timeline_express_generate_page_wrapper_end() {
576
 
577
  get_timeline_express_template( 'page-wrappers-end' );
578
 
579
  }
580
-
581
  }
582
 
583
  if ( ! function_exists( 'timeline_express_generate_sidebar' ) ) {
584
-
585
  /**
586
  * Generate the Timeline Express ending page wrappers
 
587
  * @return mixed
 
 
588
  */
589
  function timeline_express_generate_sidebar() {
590
 
591
  get_timeline_express_template( 'timeline-express-sidebar' );
592
 
593
  }
594
-
595
  }
5
  *
6
  * @link http://www.codeparrots.com
7
  *
8
+ * @package TimelineExpressBase
 
9
  * @since 1.2
10
  */
11
+
12
  /**
13
  * Custom CMB2 callback and sanitization functions
14
  *
15
  * @since 1.2
16
  */
17
+
18
  /* Render custom date_time_stamp field */
19
  add_action( 'cmb2_render_te_date_time_stamp_custom', 'cmb2_render_te_date_time_stamp_custom', 10, 5 );
20
+
21
  /* Render content in the timeline express addon advertisments metabox */
22
  add_action( 'cmb2_render_te_advert_metabox', 'cmb2_render_callback_te_advert_metabox', 10, 5 );
23
+
24
  /* Render content in the help & doc metabox */
25
  add_action( 'cmb2_render_te_help_docs_metabox', 'cmb2_render_callback_te_help_docs_metabox', 10, 5 );
26
+
27
  /* Render custom bootstrap icons dropdown field */
28
  add_action( 'cmb2_render_te_bootstrap_dropdown', 'cmb2_render_callback_te_bootstrap_dropdown', 10, 5 );
29
 
30
  /* Sanitize custom date_time_stamp field */
31
  add_filter( 'cmb2_sanitize_te_date_time_stamp_custom', 'cmb2_sanitize_te_date_time_stamp_custom_callback', 10, 2 );
32
+
33
  /* Sanitize custom bootstrap icons dropdown field */
34
  add_filter( 'cmb2_sanitize_te_bootstrap_dropdown', 'cmb2_validate_te_bootstrap_dropdown_callback', 10, 2 );
35
 
53
  * @return plugin options or defaults if not set
54
  */
55
  function timeline_express_get_options() {
56
+
57
  return get_option( TIMELINE_EXPRESS_OPTION, array(
58
  'announcement-time-frame' => '1',
59
  'announcement-display-order' => 'ASC',
72
  'delete-announcement-posts-on-uninstallation' => 0,
73
  'version' => TIMELINE_EXPRESS_VERSION_CURRENT,
74
  ) );
75
+
76
  }
77
 
78
 
82
  * @since 1.2
83
  */
84
  function timeline_express_announcement_metaboxes() {
85
+
86
  require_once TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/metaboxes.announcements.php';
87
+
88
  }
89
 
90
  /**
101
  *
102
  * @param int $field field to render.
103
  * @param int/string $escaped_value stored value for this field.
104
+ *
105
  * @since v1.1.5.7
106
  */
107
  function cmb2_render_callback_te_bootstrap_dropdown( $field, $escaped_value ) {
108
+
109
  timeline_express_build_bootstrap_icon_dropdown( $field, $escaped_value );
110
+
111
  }
112
 
113
  /**
119
  * @param type $object_id this specific fields id.
120
  * @param type $object_type the type for this field.
121
  * @param type $field_type_object the entire field object.
122
+ *
123
  * @since v1.1.5.7
124
  */
125
  function cmb2_render_te_date_time_stamp_custom( $field, $meta, $object_id, $object_type, $field_type_object ) {
126
+
127
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/time-stamp-custom.php' );
128
+
129
  }
130
 
131
  /**
132
  * Render the custom 'Advertisment' metabox.
133
  *
 
 
134
  * @param int $field field to render.
135
  * @param int/string $meta stored value for this field.
136
  * @param type $object_id this specific fields id.
137
  * @param type $object_type the type for this field.
138
  * @param type $field_type_object the entire field object.
139
+ *
140
+ * @since v1.1.5
141
  */
142
  function cmb2_render_callback_te_advert_metabox( $field, $meta, $object_id, $object_type, $field_type_object ) {
143
+
144
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/advertisment-metabox.php' );
145
+
146
  }
147
 
148
  /**
149
  * Render the custom 'Help & Documentation' metabox.
150
  *
 
 
151
  * @param int $field field to render.
152
  * @param int/string $meta stored value for this field.
153
  * @param type $object_id this specific fields id.
154
  * @param type $object_type the type for this field.
155
  * @param type $field_type_object the entire field object.
156
+ *
157
+ * @since v1.1.5
158
  */
159
  function cmb2_render_callback_te_help_docs_metabox( $field, $meta, $object_id, $object_type, $field_type_object ) {
160
+
161
  include_once( TIMELINE_EXPRESS_PATH . 'lib/admin/metaboxes/partials/help-docs-metabox.php' );
162
+
163
  }
164
 
165
  /**
166
  * Custom sanitization function for our custom time stamp field.
167
  *
168
+ * @param int $value UNIX time stamp value stored in the database.
169
+ * @param int $new new UNIX time stamp value to store in the database.
170
+ *
171
  * @since @v1.1.5
 
 
172
  */
173
  function cmb2_sanitize_te_date_time_stamp_custom_callback( $value, $new ) {
174
+
175
  if ( isset( $new ) && ! empty( $new ) ) {
176
+
177
  $date_object = date_create_from_format( get_option( 'date_format' ), $new );
178
+
179
  return $date_object ? apply_filters( 'timeline_express_sanitize_date_format', $date_object->setTime( 0, 0, 0 )->getTimeStamp(), $new ) : apply_filters( 'timeline_express_sanitize_date_format', strtotime( $new ), $new );
180
+
181
  }
182
+
183
  /* If all else fails, return current date/time UNIX time stamp */
184
  return strtotime( 'now' );
185
  }
187
  /**
188
  * Custom sanitization function for our custom time stamp field.
189
  *
190
+ * @param string $override_value null
191
+ * @param string $value new icon Value to store in the database.
192
+ *
193
  * @since @v1.1.5
 
 
194
  */
195
  function cmb2_validate_te_bootstrap_dropdown_callback( $override_value, $value ) {
196
+
197
  if ( isset( $value ) && ! empty( $value ) ) {
198
+
199
  return 'fa-' . trim( $value );
200
+
201
  }
202
+
203
  return '';
204
  }
205
 
210
  * @since v1.1.5.7
211
  */
212
  function timeline_express_enqueue_font_awesome() {
213
+
214
  $font_awesome_version = apply_filters( 'timeline_express_font_awesome_version', '4.6.1' );
215
+
216
  $http = ( is_ssl() ) ? 'https:' : 'http:';
217
+
218
  /* Check if CDN is reachable, if so - get em' */
219
  if ( wp_remote_get( $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.css' ) ) {
220
+
221
  /* Enqueue font awesome for use in column display */
222
  wp_enqueue_style( 'font-awesome', $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.min.css', array(), $font_awesome_version );
223
+
224
  } else {
225
+
226
  /* If not, load the local version */
227
  wp_enqueue_style( 'font-awesome', TIMELINE_EXPRESS_URL . 'lib/icons/css/font-awesome.min.css', array(), $font_awesome_version );
228
+
229
  }
230
+
231
  }
232
 
233
  /**
234
  * Construct a dropdown for our bootstrap icons.
235
  *
236
+ * @param string $field The field type being displayed.
237
+ * @param string $meta The stored value in the database.
238
+ *
239
  * @since v1.1.5.7
240
  */
241
  function timeline_express_build_bootstrap_icon_dropdown( $field, $meta ) {
242
+
243
  $screen = get_current_screen();
244
+
245
  $screen_base = $screen->base;
246
+
247
  $http = ( is_ssl() ) ? 'https:' : 'http:';
248
+
249
  $font_awesome_version = apply_filters( 'timeline_express_font_awesome_version', '4.6.1' );
250
 
251
  // Store our response in a transient for faster page loading.
252
  if ( false === ( $response = get_transient( 'te_font_awesome_transient' ) ) ) {
253
+
254
  // Retreive the icons out of the css file.
255
  $response = wp_remote_get( $http . '//netdna.bootstrapcdn.com/font-awesome/' . $font_awesome_version . '/css/font-awesome.css' );
256
+
257
  if ( is_wp_error( $response ) ) {
258
+
259
  // Load font awesome locally.
260
  $response = wp_remote_get( TIMELINE_EXPRESS_URL . 'lib/icons/css/font-awesome.css' );
261
+
262
  }
263
+
264
  // It wasn't there, so regenerate the data and save the transient.
265
  set_transient( 'te_font_awesome_transient', $response, 12 * HOUR_IN_SECONDS );
266
+
267
  }
268
 
269
  /* If the response body is empty, abort */
270
  if ( empty( $response['body'] ) || ! isset( $response['body'] ) ) {
271
+
272
  return printf( '<em>' . esc_attr__( 'There was an error processing the bootstrap icons.', 'timeline-express' ) . '</em>' );
273
+
274
  }
275
 
276
  // Extract the icons from the stylesheet
277
  $pattern = '/\.(fa-(?:\w+(?:-)?)+):before\s+{\s*content:\s*"(.+)";\s+}/';
278
+
279
  preg_match_all( $pattern, $response['body'], $matches, PREG_SET_ORDER );
280
 
281
  $icons = array();
282
+
283
  foreach ( $matches as $match ) {
284
+
285
  $icons[ str_replace( 'fa-', '', $match[1] ) ] = $match[2];
286
+
287
  }
288
  ?>
289
 
290
  <script>
291
  jQuery( document ).ready( function() {
292
+
293
  jQuery('.selectpicker').selectpicker({
294
  style: 'btn-info',
295
  size: 6
296
  });
297
+
298
  });
299
  </script>
300
+
301
  <style>
302
  .dropdown-toggle { background: transparent !important; border: 1px solid rgb(201, 201, 201) !important; }
303
  .dropdown-toggle .caret { border-top-color: #333 !important; }
307
  <?php
308
  // Check which page were on, set name appropriately.
309
  if ( isset( $field->args['id'] ) ) {
310
+
311
  $field_name = $field->args['id'];
312
+
313
  } else {
314
+
315
  $field_name = esc_attr( $field['id'] );
316
+
317
  }
318
  ?>
319
 
321
  <select class="selectpicker" name="<?php echo esc_attr( $field_name ); ?>" id="default-announcement-icon" name="<?php echo esc_attr( $field_name ); ?>">
322
 
323
  <?php
324
+
325
  ksort( $icons );
326
+
327
  /* sort the bootstrap icons alphabetically */
328
  foreach ( $icons as $icon_name => $icon_content ) { ?>
329
+
330
  <option class="fa" data-icon="fa-<?php echo esc_attr( $icon_name ); ?>" <?php selected( 'fa-'.$icon_name , $meta ); ?>> <?php echo esc_attr( $icon_name ); ?> </option>
331
+
332
  <?php } ?>
333
 
334
  </select>
336
 
337
  <?php
338
  if ( 'te_announcements_page_timeline-express-settings' !== $screen_base ) {
339
+
340
  echo '<p class="cmb2-metabox-description">' . esc_html( $field->args['desc'] ) . '</p>';
341
+
342
  }
343
+
344
  }
345
 
346
  /**
347
+ * Include a specified Timeline Express template
348
+ *
349
+ * @param string $template_name Template name to load
350
+ *
351
+ * @return null Include the template needed
352
+ *
353
  * @since 1.2
354
  */
355
  function get_timeline_express_template( $template_name = 'timeline-container' ) {
356
+
357
  /**
358
  * Switch over the template name, return template
359
  * - Check if a file exists locally (theme root), and load it.
360
  * - Note: Users can create a directory (timeline-express), and copy over the announcement template into the theme root.
361
  */
362
  switch ( $template_name ) {
363
+
364
  default:
365
  case 'timeline-container':
366
  $file_name = 'timeline-express-container';
367
  break;
368
+
369
  case 'single-announcement':
370
  $file_name = 'single-timeline-express-content';
371
  break;
372
+
373
  case 'page-wrappers-start':
374
  $file_name = 'timeline-express-page-wrappers-start';
375
  break;
376
+
377
  case 'page-wrappers-end':
378
  $file_name = 'timeline-express-page-wrappers-end';
379
  break;
380
+
381
  case 'timeline-express-sidebar':
382
  $file_name = 'timeline-express-sidebar';
383
  break;
384
+
385
  }
386
+
387
  // check for and load file
388
  if ( file_exists( get_stylesheet_directory() . '/timeline-express/' . $file_name . '.php' ) ) {
389
+
390
  include( get_stylesheet_directory() . '/timeline-express/' . $file_name . '.php' );
391
+
392
  return;
393
+
394
  }
395
+
396
  include( TIMELINE_EXPRESS_PATH . 'lib/public/partials/' . $file_name . '.php' );
397
+
398
  }
399
 
400
  /**
402
  * This is redundant, but will be easier for our users to use in their themes
403
  */
404
  function timeline_express_content() {
405
+
406
  // check for and load file
407
  if ( file_exists( get_stylesheet_directory() . '/timeline-express/single-timeline-express-content.php' ) ) {
408
+
409
  include( get_stylesheet_directory() . '/timeline-express/single-timeline-express-content.php' );
410
+
411
  return;
412
+
413
  }
414
+
415
  include( TIMELINE_EXPRESS_PATH . 'lib/public/partials/single-timeline-express-content.php' );
416
+
417
  }
418
 
419
  /**
420
  * Helper function used to clear out the timeline express transients
421
  * This is fired when the settings are saved, and when an announcement is updated/published
422
+ *
423
  * @param integer $page_id The page ID to delete transients for
424
+ *
425
  * @since 1.2
426
  */
427
  function delete_timeline_express_transients( $page_id = false ) {
428
+
429
  $transient_name = ( $page_id ) ? 'timeline-express-query-' . $page_id : 'timeline-express-query';
430
+
431
  global $wpdb;
432
+
433
  // Query the database for all transients with the text 'timeline-express-query'
434
  $results = $wpdb->get_results(
435
  $wpdb->prepare(
436
  "SELECT * from `{$wpdb->prefix}options` WHERE option_name LIKE %s;", '%' . $wpdb->esc_like( $transient_name ) . '%'
437
  )
438
  );
439
+
440
  // if we have some results, continue
441
  if ( $results && ! empty( $results ) ) {
442
+
443
  // loop and delete our transient
444
  foreach ( $results as $transient ) {
445
+
446
  delete_transient( str_replace( '_transient_', '', $transient->option_name ) );
447
+
448
  }
449
+
450
  }
451
+
452
  }
453
 
454
  /**
456
  * if it does not, include our class file.
457
  */
458
  function does_timeline_express_init_class_exist() {
459
+
460
  if ( class_exists( 'Timeline_Express_Initialize' ) ) {
461
+
462
  return;
463
+
464
  }
465
+
466
  include TIMELINE_EXPRESS_PATH . 'lib/classes/class.timeline-express-initialize.php';
467
+
468
  }
469
 
470
  /**
471
  * Get the full icon HTML markup
472
+ *
473
+ * @param int $post_id The announcement ID to retreive the icon from
474
+ *
475
+ * @return string The HTML markup to return
476
  */
477
  function timeline_express_get_announcement_icon_markup( $post_id ) {
478
+
479
  $timeline_express_options = timeline_express_get_options();
480
+
481
  $custom_icon_html = apply_filters( 'timeline_express_custom_icon_html', apply_filters( 'timeline-express-custom-icon-html', false, $post_id, $timeline_express_options ), $post_id, $timeline_express_options );
482
+
483
  /* Generate the Icon */
484
  if ( $custom_icon_html ) {
485
+
486
  return $custom_icon_html;
487
+
488
  }
489
+
490
  /* If read more visibility is set to true, wrap the icon in a link. */
491
  if ( '1' === $timeline_express_options['read-more-visibility'] ) { ?>
492
+
493
  <a class="cd-timeline-icon-link" href="<?php echo esc_attr( apply_filters( 'timeline-express-read-more-link', esc_url( get_the_permalink( $post_id ) ) ) ); ?>">
494
+
495
  <?php } ?>
496
+
497
  <div class="cd-timeline-img cd-picture" style="background:<?php esc_attr_e( timeline_express_get_announcement_icon_color( $post_id ) ); ?>;">
498
+
499
  <!-- Custom Action Hook -->
500
  <?php if ( defined( 'TIMELINE_EXPRESS_YEAR_ICONS' ) && TIMELINE_EXPRESS_YEAR_ICONS ) { ?>
501
+
502
  <!-- Standard Font Awesome Icon -->
503
  <span class="year">
504
+
505
  <strong>
506
+
507
+ <?php echo esc_html( date( 'Y', timeline_express_get_announcement_date_timestamp( $post_id ) ) ); ?>
508
+
509
  </strong>
510
+
511
  </span>
512
+
513
  <?php } else { ?>
514
+
515
  <!-- Standard Font Awesome Icon -->
516
  <span class="fa <?php esc_attr_e( timeline_express_get_announcement_icon( $post_id ) ); ?>" title="<?php esc_attr_e( get_the_title( $post_id ) ); ?>"></span>
517
+
518
  <?php } ?>
519
+
520
  </div> <!-- cd-timeline-img -->
521
+
522
  <?php
523
+
524
  /* If read more visibility is set to true, wrap the icon in a link. */
525
  if ( '1' === $timeline_express_options['read-more-visibility'] ) { ?>
526
+
527
  </a>
528
+
529
  <?php }
530
+
531
  }
532
 
533
  /**
534
  * Get the announcement icon chosen in the dropdown
535
+ *
536
+ * @param int $post_id The announcement ID to retreive the icon from
537
+ *
538
+ * @return string The announcement icon to use
539
  */
540
  function timeline_express_get_announcement_icon( $post_id ) {
541
+
542
  return apply_filters( 'timeline_express_icon', get_post_meta( $post_id, 'announcement_icon', true ), $post_id );
543
+
544
  }
545
 
546
  /**
547
  * Get the announcement color chosen on the announcement edit page
548
+ *
549
+ * @param int $post_id The announcement ID to retreive the color from
550
+ *
551
+ * @return string The announcement color to use behind the icon
552
  */
553
  function timeline_express_get_announcement_icon_color( $post_id ) {
554
+
555
  return apply_filters( 'timeline_express_icon_color', get_post_meta( $post_id, 'announcement_color', true ), $post_id );
556
+
557
  }
558
 
559
  /**
560
  * Retreive the timeline express announcement image
561
+ *
562
+ * @param int $post_id The announcement (post) ID whos image you want to retreive.
563
+ * @param string $image_size (optional) The image size to retreive.
564
+ *
565
+ * @return mixed Announcement image markup.
566
  */
567
  function timeline_express_get_announcement_image( $post_id, $image_size = 'timeline-express' ) {
568
+
569
  $image_size = apply_filters( 'timeline-express-announcement-img-size', $image_size, $post_id );
570
+
571
  /**
572
  * If on a single page announcement, return the srcset image - for proper responsive images
573
  * @since 1.2.7
574
  */
575
  if ( is_single() ) {
576
+
577
  $img_src = wp_get_attachment_image_url( get_post_meta( $post_id, 'announcement_image_id', true ), $image_size );
578
+
579
  $img_srcset = wp_get_attachment_image_srcset( get_post_meta( $post_id, 'announcement_image_id', true ), $image_size );
580
+
581
  ?><img class="announcement-banner-image" src="<?php echo esc_url( $img_src ); ?>" srcset="<?php echo esc_attr( $img_srcset ); ?>" sizes="(max-width: 100%) 75vw, 680px" alt="<?php esc_attr( get_the_title() ); ?>"><?php
582
+
583
  return;
584
+
585
  }
586
+
587
  /* Escaped on output in the timeline/single page */
588
  return apply_filters( 'timeline_express_image', wp_get_attachment_image(
589
  get_post_meta( $post_id, 'announcement_image_id', true ),
594
  'class' => 'announcement-banner-image',
595
  )
596
  ), $post_id );
597
+
598
  }
599
 
600
  /**
601
  * Retreive the timeline express announcement date
602
+ *
603
+ * @param int $post_id The announcement (post) ID whos image you want to retreive.
604
+ *
605
+ * @return string Execute the function to retreive the date.
606
  */
607
  function timeline_express_get_announcement_date( $post_id ) {
608
+
609
  $announcement_date = ( get_post_meta( $post_id, 'announcement_date', true ) ) ? get_post_meta( $post_id, 'announcement_date', true ) : strtotime( 'now' );
610
+
611
  return apply_filters( 'timeline_express_frontend_date_filter', date_i18n( apply_filters( 'timeline_express_custom_date_format', get_option( 'date_format' ) ), $announcement_date ), $post_id );
612
+
613
+ }
614
+
615
+ /**
616
+ * Retreive the timeline express announcement date timestamp
617
+ *
618
+ * @param int $post_id The announcement (post) ID whos image you want to retreive.
619
+ *
620
+ * @return string The UNIX timestamp announcement_date value
621
+ */
622
+ function timeline_express_get_announcement_date_timestamp( $post_id ) {
623
+
624
+ return ( get_post_meta( $post_id, 'announcement_date', true ) ) ? get_post_meta( $post_id, 'announcement_date', true ) : strtotime( 'now' );
625
+
626
  }
627
 
628
+
629
  /**
630
  * Get the announcement excerpt
631
+ *
632
  * @param int $post_id The announcement (post) ID whos excerpt you want to retreive.
633
+ *
634
  * @return string The announcement excerpt
635
  */
636
  function timeline_express_get_announcement_excerpt( $post_id ) {
637
+
638
  /* Setup the excerpt */
639
  return apply_filters( 'the_content', apply_filters( 'timeline_express_frontend_excerpt', get_the_excerpt(), $post_id ) );
640
+
641
  }
642
 
643
  /**
644
  * Setup a custom or random excerpt length based on the options set in the settings
645
+ *
646
  * @return string The announcement excerpt
647
+ *
648
  * @since 1.2
649
  */
 
650
  function timeline_express_custom_excerpt_length( $length ) {
651
+
652
  global $post;
653
+
654
  // if not an announcement post, abort
655
  if ( 'te_announcements' !== get_post_type( $post ) ) {
656
+
657
  return $length;
658
+
659
  }
660
+
661
  $timeline_express_options = timeline_express_get_options();
662
+
663
  if ( 1 === $timeline_express_options['excerpt-random-length'] ) {
664
+
665
  $random_length = (int) rand( apply_filters( 'timeline_express_random_excerpt_min', 50 ), apply_filters( 'timeline_express_random_excerpt_max', 200 ) );
666
+
667
  return (int) $random_length;
668
+
669
  }
670
+
671
  return (int) apply_filters( 'timeline_express_excerpt_length', $timeline_express_options['excerpt-trim-length'] );
672
+
673
  }
674
+ add_filter( 'excerpt_length', 'timeline_express_custom_excerpt_length', 999 );
675
 
676
  /**
677
  * Trim the excerpt and add ellipses to the end fo it
678
+ *
679
+ * @param string $more The default HTML markup for the read more link.
680
+ *
681
  * @since 1.2
682
  */
 
683
  function timeline_express_custom_read_more( $more ) {
684
+
685
  global $post;
686
+
687
  $timeline_express_options = timeline_express_get_options();
688
+
689
  // if not timeline post
690
  if ( 'te_announcements' !== get_post_type( $post ) ) {
691
+
692
  return $more;
693
+
694
  }
695
+
696
  // if read more visibility is set to hidden
697
  if ( '1' !== $timeline_express_options['read-more-visibility'] ) {
698
+
699
  return '';
700
+
701
  }
702
+
703
  // return the default
704
  return apply_filters( 'timeline_express_read_more_ellipses', '...' );
705
+
706
  }
707
+ add_filter( 'excerpt_more', 'timeline_express_custom_read_more', 999 );
708
 
709
  /**
710
  * Hook in and generate a read more link below each announcement
711
+ *
712
  * @return string HTML markup for the new read me link.
713
  */
 
714
  function timeline_express_custom_read_more_link() {
715
+
716
  global $post;
717
+
718
  $timeline_express_options = timeline_express_get_options();
719
+
720
  // if read more visibility is set to hidden
721
  if ( '1' !== $timeline_express_options['read-more-visibility'] ) {
722
+
723
  return;
724
+
725
  }
726
+
727
  echo wp_kses_post( apply_filters( 'timeline_express_read_more_link', '<a class="' . esc_attr( apply_filters( 'timeline_express_read_more_class', 'timeline-express-read-more-link', $post->ID ) ) . '" href="'. apply_filters( 'timeline-express-read-more-link', esc_url( get_permalink( $post->ID ) ), $post->ID ) . '"> ' . esc_attr( apply_filters( 'timeline_express_read_more_text', __( 'Read more', 'timeline-express' ), $post->ID ) ) . '</a>', $post->ID ) );
728
+
729
  }
730
+ add_action( 'timeline-express-after-excerpt', 'timeline_express_custom_read_more_link', 10 );
731
 
732
  /**
733
  * Generate an excerpt of random length
734
+ *
735
  * @param int $post_id The announcement ID to retreive the excerpt
736
+ *
737
  * @return string The announcement excerpt of random length
738
  */
739
  function timeline_express_generate_random_announcement( $post_id ) {
740
+
741
  return apply_filters( 'the_content', apply_filters( 'timeline_express_random_excerpt', get_the_excerpt(), $post_id ) );
742
+
743
  }
744
 
745
  /**
746
  * Retreive a custom, user defined, field object.
747
  * This is used after you define custom fields using the timeline_express_custom_fields filter.
748
  *
749
+ * @param int $post_id The announcement (post) ID whos content you want to retreive.
750
+ * @param string $meta_name The name of the meta field (id), whos value you want to retrieve.
751
+ * @param bool $array True/False to return an array. Optional. Default: true.
752
+ *
753
+ * @return array The announcement content, passed through the_content() filter.
754
  */
755
  function timeline_express_get_custom_meta( $post_id, $meta_name, $array = true ) {
756
+
757
  /* If no post id was passed in, abort */
758
  if ( ! $post_id ) {
759
+
760
  return esc_attr__( 'You forgot to include the announcement ID.', 'timeline-express' );
761
+
762
  }
763
+
764
  /* If no meta name was passed in, abort */
765
  if ( ! $meta_name ) {
766
+
767
  return esc_attr__( 'You forgot to include the meta key.', 'timeline-express' );
768
+
769
  }
770
+
771
  /* Return the post meta, or false if nothing was found */
772
  return ( get_post_meta( $post_id, $meta_name, $array ) ) ? get_post_meta( $post_id, $meta_name, $array ) : false;
773
+
774
  }
775
 
776
  if ( ! function_exists( 'timeline_express_generate_page_wrapper_start' ) ) {
 
777
  /**
778
  * Generate the Timeline Express beginning page wrappers
779
+ *
780
  * @return mixed
781
+ *
782
+ * @since 1.2.8.6
783
  */
784
  function timeline_express_generate_page_wrapper_start() {
785
 
786
  get_timeline_express_template( 'page-wrappers-start' );
787
 
788
  }
 
789
  }
790
 
791
  if ( ! function_exists( 'timeline_express_generate_page_wrapper_end' ) ) {
 
792
  /**
793
  * Generate the Timeline Express ending page wrappers
794
+ *
795
  * @return mixed
796
+ *
797
+ * @since 1.2.8.6
798
  */
799
  function timeline_express_generate_page_wrapper_end() {
800
 
801
  get_timeline_express_template( 'page-wrappers-end' );
802
 
803
  }
 
804
  }
805
 
806
  if ( ! function_exists( 'timeline_express_generate_sidebar' ) ) {
 
807
  /**
808
  * Generate the Timeline Express ending page wrappers
809
+ *
810
  * @return mixed
811
+ *
812
+ * @since 1.2.8.6
813
  */
814
  function timeline_express_generate_sidebar() {
815
 
816
  get_timeline_express_template( 'timeline-express-sidebar' );
817
 
818
  }
 
819
  }
lib/public/css/min/timeline-express.min.css CHANGED
@@ -2,7 +2,7 @@
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
  */
8
  .cd-container{width:95%;margin:0 auto}.cd-container::after{content:'';display:table;clear:both}.cd-timeline-announcement-image{box-shadow:none!important;width:100%;display:block;margin:1em auto}#cd-timeline{position:relative;padding:2em 0;margin-top:2em;margin-bottom:3em;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);-moz-opacity:0;-khtml-opacity:0;opacity:0}#cd-timeline::before{content:'';position:absolute;top:0;left:18px;height:100%;width:4px;background:#d7e4ed}.cd-timeline-block:after,.cd-timeline-content:after{content:"";clear:both}.announcement-banner-image{margin-bottom:5px;border-radius:3px}.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;width:100%!important}.cd-timeline-block:after{display:table}.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:-5px;left:-10px;height:55px;width:55px;border-radius:50%;box-shadow:0 0 0 4px #fff,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05)}.cd-timeline-img span.year{display:inline-block;width:100%;height:100%;text-align:center;line-height:55px}.cd-timeline-img img{display:block;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}.cd-timeline-img span.year{display:inline-block;width:100%;height:100%;line-height:60px;text-align:center}.cssanimations .cd-timeline-img.is-hidden{visibility:hidden}.cssanimations .cd-timeline-img.bounce-in{visibility:visible;animation:cd-bounce-1 .6s}}@keyframes cd-bounce-1{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.2)}100%{transform:scale(1)}}.cd-timeline-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;box-shadow:0 3px 0 #B9C5CD;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box}.cd-timeline-content:after{display:table}.cd-timeline-content .timeline-express-read-more-link{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}.cd-timeline-title-container+.the-excerpt,.cd-timeline-title-container+img{margin-top:5px}.cd-timeline-content .timeline-date{display:block;margin:5px 0}.cd-timeline-content::before{content:'';position:absolute;top:16px;right:100%;height:0;width:0;border:12px solid transparent}@media only screen and (min-width:768px){.cd-timeline-content h2{margin-top:0;margin-bottom:0}.cd-timeline-content .the-excerpt{position:relative;display:block;float:left;width:100%;z-index:9}.cd-timeline-content .cd-date,.cd-timeline-content .timeline-express-read-more-link{position:relative;z-index:10}}@media only screen and (min-width:822px){.cd-container{width:100%}.cd-timeline-content{margin-left:0;padding:1.6em;width:42.5%;background:#EFEFEF}.cd-timeline-content::before{top:12px;left:100%;border-color:transparent transparent transparent #EFEFEF}.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:12px;left:auto;right:100%;border-color:transparent #EFEFEF transparent transparent}.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;animation:cd-bounce-2 .6s}.cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in{animation:cd-bounce-2-inverse .6s}}@keyframes cd-bounce-2{0%{opacity:0;transform:translateX(-100px)}60%{opacity:1;transform:translateX(20px)}100%{transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;transform:translateX(100px)}60%{opacity:1;transform:translateX(-20px)}100%{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:24px;display:block;text-align:center;margin-top:15px}.cd-timeline-block:nth-child(even) .cd-timeline-content .timeline-express-read-more-link,.cd-timeline-block:nth-child(odd) .cd-timeline-content .timeline-express-read-more-link{position:relative;z-index:10}.cd-timeline-content::before{border:9px solid transparent}}.timeline-width100{width:100%}.timeline-width34{width:34%}.timeline-width30{width:30%}.timeline-date-left{width:100%;float:left!important}body.single-te_announcements .timeline-express-content-area{width:100%}body.single-te_announcements .timeline-express-main{max-width:960px}body.single-te_announcements .announcement-banner-image{width:auto}body.single-te_announcements .timeline-express-single-page-announcement-date{display:block;margin:.5em 0}body.single-te_announcements .timeline-express-single-page-content{margin:.5em 0 1em}body.single-te_announcements nav.navigation.post-navigation{display:none}body.single-te_announcements .content-area.twentyfifteen article.te_announcements .entry-header h1{margin-top:0}
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
7
  */
8
  .cd-container{width:95%;margin:0 auto}.cd-container::after{content:'';display:table;clear:both}.cd-timeline-announcement-image{box-shadow:none!important;width:100%;display:block;margin:1em auto}#cd-timeline{position:relative;padding:2em 0;margin-top:2em;margin-bottom:3em;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);-moz-opacity:0;-khtml-opacity:0;opacity:0}#cd-timeline::before{content:'';position:absolute;top:0;left:18px;height:100%;width:4px;background:#d7e4ed}.cd-timeline-block:after,.cd-timeline-content:after{content:"";clear:both}.announcement-banner-image{margin-bottom:5px;border-radius:3px}.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;width:100%!important}.cd-timeline-block:after{display:table}.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:-5px;left:-10px;height:55px;width:55px;border-radius:50%;box-shadow:0 0 0 4px #fff,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05)}.cd-timeline-img span.year{display:inline-block;width:100%;height:100%;text-align:center;line-height:55px}.cd-timeline-img img{display:block;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}.cd-timeline-img span.year{display:inline-block;width:100%;height:100%;line-height:60px;text-align:center}.cssanimations .cd-timeline-img.is-hidden{visibility:hidden}.cssanimations .cd-timeline-img.bounce-in{visibility:visible;animation:cd-bounce-1 .6s}}@keyframes cd-bounce-1{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.2)}100%{transform:scale(1)}}.cd-timeline-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;box-shadow:0 3px 0 #B9C5CD;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box}.cd-timeline-content:after{display:table}.cd-timeline-content .timeline-express-read-more-link{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}.cd-timeline-title-container+.the-excerpt,.cd-timeline-title-container+img{margin-top:5px}.cd-timeline-content .timeline-date{display:block;margin:5px 0}.cd-timeline-content::before{content:'';position:absolute;top:16px;right:100%;height:0;width:0;border:12px solid transparent}@media only screen and (min-width:768px){.cd-timeline-content h2{margin-top:0;margin-bottom:0}.cd-timeline-content .the-excerpt{position:relative;display:block;float:left;width:100%;z-index:9}.cd-timeline-content .cd-date,.cd-timeline-content .timeline-express-read-more-link{position:relative;z-index:10}}@media only screen and (min-width:822px){.cd-container{width:100%}.cd-timeline-content{margin-left:0;padding:1.6em;width:42.5%;background:#EFEFEF}.cd-timeline-content::before{top:12px;left:100%;border-color:transparent transparent transparent #EFEFEF}.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:12px;left:auto;right:100%;border-color:transparent #EFEFEF transparent transparent}.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;animation:cd-bounce-2 .6s}.cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in{animation:cd-bounce-2-inverse .6s}}@keyframes cd-bounce-2{0%{opacity:0;transform:translateX(-100px)}60%{opacity:1;transform:translateX(20px)}100%{transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;transform:translateX(100px)}60%{opacity:1;transform:translateX(-20px)}100%{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:24px;display:block;text-align:center;margin-top:15px}.cd-timeline-block:nth-child(even) .cd-timeline-content .timeline-express-read-more-link,.cd-timeline-block:nth-child(odd) .cd-timeline-content .timeline-express-read-more-link{position:relative;z-index:10}.cd-timeline-content::before{border:9px solid transparent}}.timeline-width100{width:100%}.timeline-width34{width:34%}.timeline-width30{width:30%}.timeline-date-left{width:100%;float:left!important}body.single-te_announcements .timeline-express-content-area{width:100%}body.single-te_announcements .timeline-express-main{max-width:960px}body.single-te_announcements .announcement-banner-image{width:auto}body.single-te_announcements .timeline-express-single-page-announcement-date{display:block;margin:.5em 0}body.single-te_announcements .timeline-express-single-page-content{margin:.5em 0 1em}body.single-te_announcements nav.navigation.post-navigation{display:none}body.single-te_announcements .content-area.twentyfifteen article.te_announcements .entry-header h1{margin-top:0}
lib/public/js/min/timeline-express.min.js CHANGED
@@ -2,14 +2,7 @@
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
- * @Version 1.2.8.4
6
- * @Build 09-14-2016
7
- */
8
- /*
9
- * @Plugin Timeline Express
10
- * @Author Code Parrots
11
- * @Site https://www.wp-timelineexpress.com
12
- * @Version 1.2.8.4
13
- * @Build 09-14-2016
14
  */
15
  jQuery(document).ready(function(){jQuery("html").addClass("cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions");var a=jQuery(".cd-timeline-block");a.each(function(){timeline_express_data.animation_disabled||jQuery(this).offset().top>jQuery(window).scrollTop()+.75*jQuery(window).height()&&jQuery(this).find(".cd-timeline-img, .cd-timeline-content").addClass("is-hidden")}),timeline_express_data.animation_disabled||jQuery(window).on("scroll",function(){a.each(function(){jQuery(this).offset().top<=jQuery(window).scrollTop()+.75*jQuery(window).height()&&jQuery(this).find(".cd-timeline-img").hasClass("is-hidden")&&jQuery(this).find(".cd-timeline-img, .cd-timeline-content").removeClass("is-hidden").addClass("bounce-in")})});var b=jQuery(".timeline-express");b.imagesLoaded(function(){b.masonry({itemSelector:".cd-timeline-block"}),jQuery(".timeline-express").fadeTo("fast",1)})});
2
  * @Plugin Timeline Express
3
  * @Author Code Parrots
4
  * @Site https://www.wp-timelineexpress.com
5
+ * @Version 1.2.8.7
6
+ * @Build 09-18-2016
 
 
 
 
 
 
 
7
  */
8
  jQuery(document).ready(function(){jQuery("html").addClass("cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions");var a=jQuery(".cd-timeline-block");a.each(function(){timeline_express_data.animation_disabled||jQuery(this).offset().top>jQuery(window).scrollTop()+.75*jQuery(window).height()&&jQuery(this).find(".cd-timeline-img, .cd-timeline-content").addClass("is-hidden")}),timeline_express_data.animation_disabled||jQuery(window).on("scroll",function(){a.each(function(){jQuery(this).offset().top<=jQuery(window).scrollTop()+.75*jQuery(window).height()&&jQuery(this).find(".cd-timeline-img").hasClass("is-hidden")&&jQuery(this).find(".cd-timeline-img, .cd-timeline-content").removeClass("is-hidden").addClass("bounce-in")})});var b=jQuery(".timeline-express");b.imagesLoaded(function(){b.masonry({itemSelector:".cd-timeline-block"}),jQuery(".timeline-express").fadeTo("fast",1)})});
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: codeparrots, eherman24
3
  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
4
  Requires at least: 4.0
5
  Tested up to: 4.6.1
6
- Stable tag: 1.2.8.6
7
  License: GPLv2 or later
8
 
9
  Timeline Express allows you to create a beautiful vertical animated and responsive timeline of posts, without writing a single line of code. Sweet!
@@ -357,6 +357,13 @@ The above example will load font awesome version 4.4.0 instead of the current st
357
 
358
  == Changelog ==
359
 
 
 
 
 
 
 
 
360
  = 1.2.8.6 - September 14th, 2016 =
361
  - Minor tweaks to template engine.
362
  - Updated add-ons feed.
@@ -659,7 +666,9 @@ The above example will load font awesome version 4.4.0 instead of the current st
659
 
660
  == Upgrade Notice ==
661
 
662
- = 1.2.8.6 - September 14th, 2016 =
663
- - Minor tweaks to template engine.
664
- - Updated add-ons feed.
665
- - Tweaked the settings styles (inherit WordPress core styles).
 
 
3
  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
4
  Requires at least: 4.0
5
  Tested up to: 4.6.1
6
+ Stable tag: 1.2.8.7
7
  License: GPLv2 or later
8
 
9
  Timeline Express allows you to create a beautiful vertical animated and responsive timeline of posts, without writing a single line of code. Sweet!
357
 
358
  == Changelog ==
359
 
360
+ = 1.2.8.7 - September 18th, 2016 =
361
+ - Fixed bug where 'years' were not displaying properly when using `TIMELINE_EXPRESS_YEAR_ICONS`.
362
+ - Introduced a new helper function, `timeline_express_get_announcement_date_timestamp`.
363
+ - Double spaced our `helpers.php` file for easier reading.
364
+ - Re-factored a few helper functions.
365
+ - Added a new WPML config file (Now 100% compatible with WPML!).
366
+
367
  = 1.2.8.6 - September 14th, 2016 =
368
  - Minor tweaks to template engine.
369
  - Updated add-ons feed.
666
 
667
  == Upgrade Notice ==
668
 
669
+ = 1.2.8.7 - September 18th, 2016 =
670
+ - Fixed bug where 'years' were not displaying properly when using `TIMELINE_EXPRESS_YEAR_ICONS`.
671
+ - Introduced a new helper function, `timeline_express_get_announcement_date_timestamp`.
672
+ - Double spaced our `helpers.php` file for easier reading.
673
+ - Re-factored a few helper functions.
674
+ - Added a new WPML config file (Now 100% compatible with WPML!).
templates/timeline-express-page-wrappers-end.php ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Content wrapper endings
4
+ *
5
+ * This template can be overridden by copying it to yourtheme/timeline-express/timeline-express-page-wrappers-end.php.
6
+ *
7
+ * @version 1.0.0
8
+ */
9
+
10
+ if ( ! defined( 'ABSPATH' ) ) {
11
+ exit; // Exit if accessed directly
12
+ }
13
+
14
+ $template = get_option( 'template' );
15
+
16
+ switch ( $template ) {
17
+
18
+ case 'twentyeleven' :
19
+ echo '</div>';
20
+ get_sidebar( 'shop' );
21
+ echo '</div>';
22
+ break;
23
+
24
+ case 'twentytwelve' :
25
+ echo '</div></div>';
26
+ break;
27
+
28
+ case 'twentythirteen' :
29
+ echo '</div></div>';
30
+ break;
31
+
32
+ case 'twentyfourteen' :
33
+ echo '</div></div></div>';
34
+ get_sidebar( 'content' );
35
+ break;
36
+
37
+ case 'twentyfifteen' :
38
+ echo '</div></div>';
39
+ break;
40
+
41
+ case 'twentysixteen' :
42
+ echo '</main></div>';
43
+ break;
44
+
45
+ default :
46
+
47
+ /**
48
+ * @action timeline_express_page_wrapper_end
49
+ *
50
+ * Hook in to use custom page wrappers
51
+ */
52
+ do_action( 'timeline_express_page_wrapper_end' );
53
+
54
+ echo '</div></div>';
55
+ break;
56
+ }
templates/timeline-express-page-wrappers-start.php ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Content wrappers beginngs
4
+ *
5
+ * This template can be overridden by copying it to yourtheme/level-playing-field/global/timeline-express-page-wrappers-start.php.
6
+ *
7
+ * @version 1.0.0
8
+ */
9
+ if ( ! defined( 'ABSPATH' ) ) {
10
+ exit; // Exit if accessed directly
11
+ }
12
+
13
+ $template = get_option( 'template' );
14
+
15
+ switch ( $template ) {
16
+
17
+ case 'twentyeleven' :
18
+ echo '<div id="primary"><div id="content" role="main" class="twentyeleven">';
19
+ break;
20
+
21
+ case 'twentytwelve' :
22
+ echo '<div id="primary" class="site-content"><div id="content" role="main" class="twentytwelve">';
23
+ break;
24
+
25
+ case 'twentythirteen' :
26
+ echo '<div id="primary" class="site-content"><div id="content" role="main" class="entry-content twentythirteen">';
27
+ break;
28
+
29
+ case 'twentyfourteen' :
30
+ echo '<div id="primary" class="content-area"><div id="content" role="main" class="site-content twentyfourteen"><div class="tfwc entry-content">';
31
+ break;
32
+
33
+ case 'twentyfifteen' :
34
+ add_action( 'timeline_express_before_announcement_content', 'timeline_express_twenty_fifteen_top_container' );
35
+ add_action( 'timeline_express_after_announcement_content', 'timeline_express_twenty_fifteen_bottom_container' );
36
+ echo '<div id="primary" role="main" class="content-area twentyfifteen"><div id="main" class="site-main t15wc">';
37
+ break;
38
+
39
+ case 'twentysixteen' :
40
+ echo '<div id="primary" class="content-area twentysixteen"><main id="main" class="site-main" role="main">';
41
+ break;
42
+
43
+ default :
44
+
45
+ /**
46
+ * @action timeline_express_page_wrapper_start
47
+ *
48
+ * Hook in to use custom page wrappers
49
+ */
50
+ do_action( 'timeline_express_page_wrapper_start' );
51
+
52
+ echo '<div id="container"><div id="content" role="main">';
53
+ break;
54
+
55
+ }
56
+ /**
57
+ * Twenty Fifteen Helper
58
+ */
59
+ function timeline_express_twenty_fifteen_top_container() {
60
+ echo '<div class="entry-content">';
61
+ }
62
+ /**
63
+ * Twenty Fifteen Helper
64
+ */
65
+ function timeline_express_twenty_fifteen_bottom_container() {
66
+ echo '</div>';
67
+ }
templates/timeline-express-sidebar.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Timeline Express Sidebar
4
+ *
5
+ * This template can be overridden by copying it to yourtheme/timeline-express/timeline-express-sidebar.php.
6
+ *
7
+ * @since 1.0.0
8
+ */
9
+
10
+ // Exit if accessed directly
11
+ if ( ! defined( 'ABSPATH' ) ) {
12
+ exit;
13
+ }
14
+
15
+ get_sidebar( 'timeline-express' );
timeline-express.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: Timeline Express
5
  Plugin URI: https://www.wp-timelineexpress.com
6
  Description: Create a beautiful vertical, CSS3 animated and responsive timeline in minutes flat without writing code.
7
- Version: 1.2.8.6
8
  Author: Code Parrots
9
  Text Domain: timeline-express
10
  Author URI: http://www.codeparrots.com
4
  Plugin Name: Timeline Express
5
  Plugin URI: https://www.wp-timelineexpress.com
6
  Description: Create a beautiful vertical, CSS3 animated and responsive timeline in minutes flat without writing code.
7
+ Version: 1.2.8.7
8
  Author: Code Parrots
9
  Text Domain: timeline-express
10
  Author URI: http://www.codeparrots.com