From c42dd6c8d280b185071d08536db56ee5f4e1e53f Mon Sep 17 00:00:00 2001 From: Stefan Kalscheuer Date: Sat, 9 Dec 2017 10:31:16 +0100 Subject: [PATCH] Ticker HTML and CSS classes harmonized --- images/dashicon.png | Bin 3948 -> 0 bytes includes/class-wpliveticker2-widget.php | 6 +- includes/class-wpliveticker2.php | 78 +++++++++++++----------- styles/wp-liveticker2.css | 24 ++++---- 4 files changed, 58 insertions(+), 50 deletions(-) delete mode 100644 images/dashicon.png diff --git a/images/dashicon.png b/images/dashicon.png deleted file mode 100644 index 966cee3cab140421512ecdf52aba27fba281b0ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3948 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 -
    +
      'wplt2_tick', @@ -79,7 +79,7 @@ class WPLiveticker2_Widget extends WP_Widget { $wp_query->the_post(); ?>
    • -
    • ' . esc_html__( 'show all', 'wplt2' ) . '...

      '; + print ''; } // @codingStandardsIgnoreLine echo $after_widget; diff --git a/includes/class-wpliveticker2.php b/includes/class-wpliveticker2.php index 14512ce..14224ba 100644 --- a/includes/class-wpliveticker2.php +++ b/includes/class-wpliveticker2.php @@ -200,10 +200,7 @@ class WPLiveticker2 { while ( $wp_query->have_posts() ) { $wp_query->the_post(); - $output .= '
    • -

      ' . get_the_time( 'd.m.Y H.i' ) . ' - ' . get_the_title() . '

      -

      ' . get_the_content() . '

    • '; + $output .= self::tick_html( get_the_time( 'd.m.Y H.i' ), get_the_title(), get_the_content() ); } $output .= '
    '; @@ -266,48 +263,45 @@ class WPLiveticker2 { // Extract update requests. if ( isset( $_POST['update'] ) && is_array( $_POST['update'] ) ) { + $res = array(); foreach ( $_POST['update'] as $updateReq ) { if ( isset ( $updateReq['s'] ) ) { $slug = $updateReq['s']; $limit = ( isset ( $updateReq['l'] ) ) ? intval( $updateReq['l'] ) : - 1; $lastPoll = ( isset ( $updateReq['t'] ) ) ? intval( $updateReq['t'] ) : 0; - // TODO: fetch updates, render and add to result. + // Query new ticks from DB. + $queryArgs = array( + 'post_type' => 'wplt2_tick', + 'posts_per_page' => $limit, + 'tax_query' => array( + array( + 'taxonomy' => 'wplt2_ticker', + 'field' => 'slug', + 'terms' => $slug, + ) + ) + ); + + $query = new WP_Query( $queryArgs ); + + $out = ''; + while ( $query->have_posts() ) { + $query->the_post(); + $out .= self::tick_html( get_the_time( 'd.m.Y H.i' ), get_the_title(), get_the_content() ); + } + $res[] = array( + 's' => $slug, + 'h' => $out, + 't' => time(), + ); } } + // Echo JSON encoded result set. + echo json_encode( $res ); } exit; - - // if ( $slug ) { - // // get new ticks from database - // $args = array( - // 'post_type' => 'wplt_tick', - // 'posts_per_page' => '-1', - // 'tax_query' => array( - // array( - // 'taxonomy' => 'wplt_ticker', - // 'field' => 'slug', - // 'terms' => $slug - // ) - // ) - // ); - // - // $wp_query = new WP_Query( $args ); - // $output = ''; - // - // while ( $wp_query->have_posts() ) { - // $wp_query->the_post(); - // $output .= '
  • ' - // . '

    ' . get_the_time( 'd.m.Y H.i' ) . '' - // . '' . get_the_title() . '

    ' - // . '

    ' . get_the_content() . '

  • '; - // } - // - // // Echo success response - // echo $output; - // } - // die(); } /** @@ -336,4 +330,18 @@ class WPLiveticker2 { 'reset_settings' => 0, ); } + + /** + * Generate HTML code for a tick element. + * + * @param string $time Tick time (readable). + * @param string $title Tick title. + * @param string $content Tick content. + */ + private static function tick_html( $time, $title, $content ) { + return '
  • ' + . '

    ' . esc_html( $time ) . '' + . '' . esc_html( $title ) . '

    ' + . '

    ' . $content . '

  • '; + } } diff --git a/styles/wp-liveticker2.css b/styles/wp-liveticker2.css index b6ab194..d26a266 100644 --- a/styles/wp-liveticker2.css +++ b/styles/wp-liveticker2.css @@ -1,58 +1,58 @@ -ul.wplt2_ticker { +ul.wplt2-ticker { list-style-type: none; } -li.wplt2_tick { +li.wplt2-tick { background-color: #F5F5F5; margin: 0.1em; padding: 0.1em 0.3em; } -li.wplt2_tick p { +li.wplt2-tick p { margin: 0.3em; } -span.wplt2_tick_time { +span.wplt2-tick-time { color: #002C58; font-size: 0.7em; font-style: italic; } -span.wplt2_tick_title { +span.wplt2-tick-title { color: #002C58; font-weight: bold; margin-left: 0.5em; } -p.wplt2_tick_content { +p.wplt2-tick-content { margin-top: -0.7em; text-indent: 0.5em; } -ul.wplt_2widget { +ul.wplt2-widget { list-style-type: none; margin-top: -0.5em; } -ul.wplt2_widget li { +ul.wplt2-widget li { text-align: left; } -span.wplt2_widget_time { +span.wplt2-widget-time { font-size: 0.7em; font-style: italic; } -span.wplt2_widget_content { +span.wplt2-widget-content { color: #002C58; text-indent: 0.2em; } -span.wplt2_widget_content_new { +span.wplt2-widget-content-new { color: #800000; text-indent: 0.2em; } -p.wplt2_widget_link { +p.wplt2-widget-link { text-align: right; }