public function __construct($item_reviewed, $review, $reviewer, $date_reviewed) { parent::__construct(); $this->set_attribute_str('class', 'hreview'); $item_div = new HTMLTags_Div(); $item_div->set_attribute_str('class', 'item'); $item_div->append_str_to_content($item_reviewed); $this->append_tag_to_content($item_div); $description_div = new HTMLTags_Div(); $description_div->set_attribute_str('class', 'description'); $description_p = new HTMLTags_P($review); $description_div->append_tag_to_content($description_p); $this->append_tag_to_content($description_div); $reviewer_vcard_span = new HTMLTags_Span(); $reviewer_vcard_span->set_attribute_str('class', 'reviewer vcard'); $reviewer_fn_span = new HTMLTags_Span(); $reviewer_fn_span->set_attribute_str('class', 'fn'); $reviewer_fn_span->append_str_to_content($reviewer); $reviewer_vcard_span->append_tag_to_content($reviewer_fn_span); $random_br_tag = new HTMLTags_BR(); $reviewer_vcard_span->append_tag_to_content($random_br_tag); $date_reviewed_abbr = new HTMLTags_Abbr(); $date_reviewed_abbr->set_attribute_str('class', 'dtreviewed'); $datetime_iso8601 = Formatting_DateTime::datetime_to_ISO8601($date_reviewed); $date_reviewed_abbr->set_attribute_str('title', $datetime_iso8601); $datetime_human_readable = Formatting_DateTime::datetime_to_human_readable($date_reviewed); $date_reviewed_abbr->append_str_to_content($datetime_human_readable); $reviewer_vcard_span->append_tag_to_content($date_reviewed_abbr); $this->append_tag_to_content($reviewer_vcard_span); return $this; }
public function get_latest_photographs_rss() { $photographs_table = $this->get_element(); $rss_intro_str = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n <rss version=\"2.0\"\n xmlns:media=\"http://search.yahoo.com/mrss/\"\n xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n >\n <channel>" . "\n\t\t\t"; $rss_outro_str = "\n </channel>\n </rss>"; $rss_header_str = ''; $rss_header_str .= "<title>Brighton Wok - Latest Photos</title>"; $rss_header_str .= "<link>http://www.brighton-wok.com/gallery.html</link>"; $rss_header_str .= "<description>A feed of photographs from the production of Brighton Wok</description>"; $rss_header_str .= "<pubDate>" . date('Y-m-d') . "</pubDate>"; $rss_header_str .= "<lastBuildDate>" . date('Y-m-d') . "</lastBuildDate>"; $rss_header_str .= "<generator>http://www.brighton-wok.com/</generator>" . "\n\t\t\t"; $recent_photograph_rows = $photographs_table->get_all_rows('added', 'DESC', 0, 10); $rss_photos_strs_array = array(); foreach ($recent_photograph_rows as $recent_photograph_row) { $recent_photograph_image_row = $recent_photograph_row->get_full_size_image(); $recent_photograph_image_row_renderer = $recent_photograph_image_row->get_renderer(); $recent_photograph_image_uri = $recent_photograph_image_row_renderer->get_html_url_in_public_images(); $recent_photograph_thumbnail_row = $recent_photograph_row->get_thumbnail_image(); $recent_photograph_thumbnail_row_renderer = $recent_photograph_thumbnail_row->get_renderer(); $recent_photograph_thumbnail_uri = $recent_photograph_thumbnail_row_renderer->get_html_url_in_public_images(); $rss_str = ''; $rss_str .= "<item>" . "\n\t\t\t\t"; $rss_str .= "<title>" . $recent_photograph_row->get_name() . "</title>"; $rss_str .= "<link>http://www.brighton-wok.com/?page=gallery&photograph_id=" . $recent_photograph_row->get_id() . "</link>"; $date_added = $recent_photograph_row->get_added(); $date_added_human_readable = Formatting_DateTime::datetime_to_human_readable($date_added); $rss_str .= "<description>" . "<img src=\"http://www.brighton-wok.com" . $recent_photograph_image_uri->get_as_string() . "\" alt=\"" . $recent_photograph_row->get_name() . "\" /><p>" . $recent_photograph_row->get_description() . "</p><p>Photograph added on " . $date_added_human_readable . "</p></description>"; $rss_str .= "<pubDate>" . $recent_photograph_row->get_added() . "</pubDate>"; $rss_str .= "<dc:date.Taken>" . $recent_photograph_row->get_added() . "</dc:date.Taken>"; $rss_str .= "<author>photos@brighton-wok.com (Brighton Wok)</author>"; $rss_str .= "<media:content url=\"http://www.brighton-wok.com" . $recent_photograph_image_uri->get_as_string() . "\"" . " type=\"" . $recent_photograph_image_row->get_file_type() . "\" />"; $rss_str .= "<media:title>" . $recent_photograph_row->get_name() . "</media:title>"; $rss_str .= "<media:text type=\"html\">" . $recent_photograph_row->get_description() . "</media:text>"; $rss_str .= "<media:thumbnail url=\"http://www.brighton-wok.com" . $recent_photograph_thumbnail_uri->get_as_string() . "\" />"; $rss_str .= "<media:credit role=\"photographer\">Connected Films</media:credit>"; $tags = array(); $tags = $recent_photograph_row->get_tags_strs(); $rss_str .= "<media:category scheme=\"urn:flickr:tags\">"; foreach ($tags as $tag) { $rss_str .= $tag . " "; } $rss_str .= "</media:category>" . "\n\t\t\t"; $rss_str .= "</item>" . "\n\t\t\t"; $rss_photos_strs_array[] = $rss_str; } ################################ # Build the RSS page ################################ $rss_page = $rss_intro_str . $rss_header_str; foreach ($rss_photos_strs_array as $rss_photo_str) { $rss_page .= $rss_photo_str; } $rss_page .= $rss_outro_str; return $rss_page; }