std::time_t ctime;
std::time_t mtime;
public:
- DocListItem (std::string title, std::string url,
- std::time_t ctime, std::time_t mtime, std::string desc ) {
- this->title = escape_html (title);
- this->url = url;
- this->ctime = ctime;
- this->mtime = mtime;
- this->desc = desc;
+ DocListItem (Document *doc, std::string urlpath) {
+ this->title = doc->get_title ();
+ this->url = urlpath + doc->get_filename() + ".html";
+ this->ctime = doc->get_creation_date ();
+ this->mtime = doc->get_modified_date ();
+ this->desc = doc->get_meta_desc ();
}
std::string get_desc () {
return this->desc;
}
- void set_desc (std::string desc) {
- this->desc = escape_html (desc);
- }
-
std::time_t get_mtime() {
return this->mtime;
}
- void set_mtime(std::time_t mtime) {
- this->mtime = mtime;
- }
+
std::time_t get_ctime() {
return this->ctime;
}
- void set_ctime(std::time_t ctime) {
- this->ctime = ctime;
- }
std::string get_url() {
return this->url;
}
- void set_url(std::string url) {
- this->url = url;
- }
-
std::string get_title() {
return this->title;
}
- void set_title(std::string title) {
- this->title = escape_html (title);
- }
// output to HTML vide the template
std::string to_html (Template *t);
std::list<DocListItem> items;
public:
void set_title (std::string title) {
- this->title = escape_html (title);
+ this->title = title;
}
// add a document item
void add_document_item (DocListItem docitem) {
// If the items don't exceed max size of RSS feed
if (feed.get()->get_num_items() <= MAX_RSS_FEED)
feed.get()->add_rss_item (fitem);
- // Add the document to the document list
- DocListItem item (doc.get_title(),
- urlpath + doc.get_filename() + ".html",
- doc.get_creation_date(), doc.get_modified_date (),
- doc.get_meta_desc());
+ // Add the document details to the document list
+ DocListItem item (&doc, urlpath);
article_list.get()->add_document_item (item);
// output the document also, add the navigation bit and side bars
std::unique_ptr<SideBar> bar3 (new SideBar ());
bar3.get()->set_title (tpl->get_stringbit (SUBSCRIBE));
bar3.get()->add_sidebar_item (
- GenericLinkItem (tpl->get_stringbit(RSS_FEED), urlpath + "/feed.xml"));
+ GenericLinkItem (tpl->get_stringbit(RSS_FEED), urlpath + "feed.xml"));
index.get()->add_side_bar (*bar3.get());
}
// add the navigation bit
index.get()->set_navigation_bit (*navbit.get());
- // index should contain the summary followed by the article list
- index.get()->set_content (this->summary + article_list.get()->to_html(tpl));
+ // index should contain the summary followed by the the article list
+ // and the sub categories
+ index.get()->set_content (this->summary +
+ article_list.get()->to_html(tpl) +
+ bar2.get()->to_html (tpl));
// output the index file
index.get()->output_to_html (tpl, filepath);