From 24c479d059b92eea8a58e627351dbc11ddfd50a9 Mon Sep 17 00:00:00 2001 From: cash Date: Sat, 29 Oct 2011 23:13:05 -0400 Subject: updated simplepie for Elgg 1.8 --- views/default/feed_reader/css.php | 27 ------ views/default/settings/simplepie/edit.php | 10 --- views/default/simplepie/css.php | 17 ++++ views/default/widgets/feed_reader/content.php | 81 ++++++++++++++++++ views/default/widgets/feed_reader/edit.php | 119 ++++++++++++-------------- views/default/widgets/feed_reader/view.php | 82 ------------------ 6 files changed, 154 insertions(+), 182 deletions(-) delete mode 100644 views/default/feed_reader/css.php delete mode 100644 views/default/settings/simplepie/edit.php create mode 100644 views/default/simplepie/css.php create mode 100644 views/default/widgets/feed_reader/content.php delete mode 100644 views/default/widgets/feed_reader/view.php (limited to 'views') diff --git a/views/default/feed_reader/css.php b/views/default/feed_reader/css.php deleted file mode 100644 index 7bd8d74d3..000000000 --- a/views/default/feed_reader/css.php +++ /dev/null @@ -1,27 +0,0 @@ -/*------------------------------- -SIMPLEPIE FEED WIDGET --------------------------------*/ -.simplepie_blog_title { - text-align: center; - margin-bottom: 15px; -} - -.simplepie_item { - margin-bottom: 12px; -} - -.simplepie_title { - margin-bottom: 4px; -} - -.simplepie_excerpt { - margin-bottom: 4px; -} - -.simplepie_date { - font-size: 70%; -} - -.simplepie_excerpt img { - width: 170px; -} diff --git a/views/default/settings/simplepie/edit.php b/views/default/settings/simplepie/edit.php deleted file mode 100644 index d67034aa4..000000000 --- a/views/default/settings/simplepie/edit.php +++ /dev/null @@ -1,10 +0,0 @@ -wwwroot . 'mod/simplepie/sp_compatibility_test.php'; - -?> - -

-Compatibility Test -

diff --git a/views/default/simplepie/css.php b/views/default/simplepie/css.php new file mode 100644 index 000000000..32cec16a6 --- /dev/null +++ b/views/default/simplepie/css.php @@ -0,0 +1,17 @@ + + +/* *************************************** + SIMPLIE +*************************************** */ +.simplepie-heading { + text-align: center; + margin-bottom: 8px; +} + +.simplepie-list img { + max-width: 100%; +} diff --git a/views/default/widgets/feed_reader/content.php b/views/default/widgets/feed_reader/content.php new file mode 100644 index 000000000..f13b00fe7 --- /dev/null +++ b/views/default/widgets/feed_reader/content.php @@ -0,0 +1,81 @@ +


    1. '; +$feed_url = $vars['entity']->feed_url; +if ($feed_url) { + + // get widget settings + $excerpt = $vars['entity']->excerpt; + $num_items = $vars['entity']->num_items; + $post_date = $vars['entity']->post_date; + + $cache_location = elgg_get_data_path() . '/simplepie_cache/'; + if (!file_exists($cache_location)) { + mkdir($cache_location, 0777); + } + + $feed = new SimplePie($feed_url, $cache_location); + + // doubles timeout if going through a proxy + //$feed->set_timeout(20); + + // only display errors to profile owner + $num_posts_in_feed = $feed->get_item_quantity(); + if (!$num_posts_in_feed) { + if (elgg_get_logged_in_user_guid() == elgg_get_page_owner_guid()) { + echo '

      ' . elgg_echo('simplepie:notfind') . '

      '; + } + } + + // don't display more feed items than user requested + if ($num_items > $num_posts_in_feed) { + $num_items = $num_posts_in_feed; + } + + $feed_link = elgg_view('output/url', array( + 'href' => $feed->get_permalink(), + 'text' => $feed->get_title(), + )); + + // need to center + echo "

      $feed_link

      "; + echo '
        '; + foreach ($feed->get_items(0, $num_items) as $item) { + $item_link = elgg_view('output/url', array( + 'href' => $item->get_permalink(), + 'text' => $item->get_title(), + )); + + if ($excerpt) { + $text = strip_tags($item->get_description(true), $allowed_tags); + $excerpt = $text; + } + + if ($post_date) { + $item_date_label = elgg_echo('simplepie:postedon'); + $item_date = $item->get_date('j F Y | g:i a'); + $post_date = "$item_date_label $item_date"; + } + + echo << +

        $item_link

        +
        $excerpt
        +

        $post_date

        + +HTML; + + } + echo "
      "; + +} else { + // display message only to owner + if (elgg_get_logged_in_user_guid() == elgg_get_page_owner_guid()) { + echo '

      ' . elgg_echo('simplepie:notset') . '

      '; + } +} diff --git a/views/default/widgets/feed_reader/edit.php b/views/default/widgets/feed_reader/edit.php index a721f0e8a..83218dcbb 100644 --- a/views/default/widgets/feed_reader/edit.php +++ b/views/default/widgets/feed_reader/edit.php @@ -1,69 +1,62 @@ num_items; - if (!isset($num_items)) { - $num_items = 10; - } +/** + * Simplepie feed reader widget settings + */ - $excerpt = $vars['entity']->excerpt; - if (!isset($excerpt)) { - $excerpt = 0; - } - - $post_date = $vars['entity']->post_date; - if (!isset($post_date)) { - $post_date = 0; - } -?> - -

      - - -

      - -

      - - - 'params[num_items]', - 'options_values' => array( '3' => '3', - '5' => '5', - '8' => '8', - '10' => '10', - '12' => '12', - '15' => '15', - '20' => '20', - ), - 'value' => $num_items - )); -?> -

      +// set default value +if (!isset($vars['entity']->num_items)) { + $vars['entity']->num_items = 10; +} -

      - 'params[excerpt]', - 'js' => 'id="params[excerpt]"', - 'value' => $excerpt )); -echo "excerpt)) { + $vars['entity']->excerpt = false; } -echo " />"; -echo ' ' . elgg_echo('simplepie:excerpt'); -?> -

      -

      - 'params[post_date]', - 'js' => 'id="params[post_date]"', - 'value' => $post_date )); -echo "post_date)) { + $vars['entity']->post_date = false; } -echo " />"; -echo ' ' . elgg_echo('simplepie:post_date'); -?> -

      + +$url_label = elgg_echo("simplepie:feed_url"); +$url_textbox = elgg_view('input/text', array( + 'name' => 'params[feed_url]', + 'value' => $vars['entity']->feed_url, + 'onclick' => 'this.select();', +)); + +$num_items_label = elgg_echo('simplepie:num_items'); +$num_items_select = elgg_view('input/dropdown', array( + 'name' => 'params[num_items]', + 'value' => $vars['entity']->num_items, + 'options' => array(3, 5, 8, 10, 12, 15, 20), +)); + +$excerpt_label = elgg_echo('simplepie:excerpt'); +$excerpt_checkbox = elgg_view('input/checkbox', array( + 'name' => 'params[excerpt]', + 'value' => true, + 'checked' => $vars['entity']->excerpt ? 'checked' : '', +)); + +$post_date_label = elgg_echo('simplepie:post_date'); +$post_date_checkbox = elgg_view('input/checkbox', array( + 'name' => 'params[post_date]', + 'value' => true, + 'checked' => $vars['entity']->post_date ? 'checked' : '', +)); + +echo << + $url_label + $url_textbox + +
      + $num_items_label + $num_items_select +
      +
      + $excerpt_checkbox $excerpt_label +
      +
      + $post_date_checkbox $post_date_label +
      +HTML; diff --git a/views/default/widgets/feed_reader/view.php b/views/default/widgets/feed_reader/view.php deleted file mode 100644 index 329b2fb98..000000000 --- a/views/default/widgets/feed_reader/view.php +++ /dev/null @@ -1,82 +0,0 @@ - -- cgit v1.2.3