source: trunk/lib/html_utility.h @ 234

Last change on this file since 234 was 234, checked in by Peter Johansson, 14 years ago

fixes #87 and #95 and #103 and #104 and #80 and #108, and refs #69

File size: 2.4 KB
Line 
1#ifndef _theplu_svndigest_html_utility_
2#define _theplu_svndigest_html_utility_
3
4// $Id$
5
6/*
7  Copyright (C) 2006, 2007 Peter Johansson
8
9  This file is part of svndigest, http://lev.thep.lu.se/trac/svndigest
10
11  svndigest is free software; you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation; either version 2 of the License, or
14  (at your option) any later version.
15
16  svndigest is distributed in the hope that it will be useful, but
17  WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  General Public License for more details.
20
21  You should have received a copy of the GNU General Public License
22  along with this program; if not, write to the Free Software
23  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
24  02111-1307, USA.
25*/
26
27#include <iostream>
28#include <fstream>
29#include <iosfwd>
30#include <set>
31#include <string>
32#include <vector>
33
34namespace theplu{
35namespace svndigest{
36
37  class Stats;
38  class SVNlog;
39
40  ///
41  /// @brief send anchor to stream @a os
42  ///
43  /// @param href address to link to
44  /// @param name text visible on page
45  /// @param level '../' is added @a level times before @a href
46  /// @param title title of anchor
47  ///
48  void anchor(std::ostream& os, const std::string& href, 
49              const std::string& name, u_int level=0, 
50              const std::string& title="");
51
52  ///
53  /// \brief printing cascading style sheet to file name @a str.
54  ///
55  void print_css(const std::string& str);
56
57  void print_authors(std::ostream& os, 
58                     const std::vector<std::pair<std::string, time_t> >&, 
59                     const SVNlog&, const Stats& stats);
60
61  ///
62  /// called by print_main_page
63  ///
64  void print_general_information(std::ostream&, const SVNlog&, size_t);
65
66  ///
67  /// @brief print main page
68  ///
69  void print_main_page(const std::string&, const SVNlog&, const Stats&);
70   
71  void print_recent_logs(std::ostream&, const SVNlog&);
72   
73  ///
74  /// @brief print html footer of page
75  ///
76  void print_footer(std::ostream&);
77   
78  ///
79  /// @brief print html header of page
80  ///
81  /// \param os stream to print to
82  /// \param name
83  /// \param level
84  /// \param
85  void print_header(std::ostream& os, std::string name, u_int level, 
86                    std::string user, std::string item, std::string path);
87
88
89}} // end of namespace svndigest end of namespace theplu
90
91#endif
Note: See TracBrowser for help on using the repository browser.