--- a/documents/template.inc.php +++ b/documents/template.inc.php @@ -1,150 +1,194 @@ <?php -function include_header_documents($title) { -?> -<!doctype html> -<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ --> -<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]--> -<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]--> -<!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]--> -<!-- Consider adding a manifest.appcache: h5bp.com/d/Offline --> -<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]--> -<head> - <meta charset="utf-8"> +function include_header_documents($title) +{ + header('X-UA-Compatible: IE=edge,chrome=1'); + ?> + <!doctype html> + <!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ --> + <!--[if lt IE 7]> + <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]--> + <!--[if IE 7]> + <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]--> + <!--[if IE 8]> + <html class="no-js lt-ie9" lang="en"> <![endif]--> + <!-- Consider adding a manifest.appcache: h5bp.com/d/Offline --> + <!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]--> + <head> + <meta charset="utf-8"> - <!-- Use the .htaccess and remove these lines to avoid edge case issues. - More info: h5bp.com/i/378 --> - <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <title>Australian Disclosure Logs<?php if ($title != "") echo " - $title"; ?></title> + <meta name="description" content=""> - <title>Australian Disclosure Logs<?php if ($title != "") echo " - $title";?></title> - <meta name="description" content=""> + <!-- Mobile viewport optimized: h5bp.com/viewport --> + <meta name="viewport" content="width=device-width"> + <link rel="alternate" type="application/rss+xml" title="Latest Disclosure Log Entries" href="rss.xml.php"/> + <!-- Place favicon.ico and apple-touch-icon.png in the root directory: mathiasbynens.be/notes/touch-icons --> + <meta name="google-site-verification" content="jkknX5g2FCpQvrW030b1Nq2hyoa6mb3EDiA7kCoHNj8"/> - <!-- Mobile viewport optimized: h5bp.com/viewport --> - <meta name="viewport" content="width=device-width"> + <!-- Le styles --> + <link href="css/bootstrap.min.css" rel="stylesheet"> + <style type="text/css"> + body { + padding-top: 60px; + padding-bottom: 40px; + } - <!-- Place favicon.ico and apple-touch-icon.png in the root directory: mathiasbynens.be/notes/touch-icons --> -<meta name="google-site-verification" content="jkknX5g2FCpQvrW030b1Nq2hyoa6mb3EDiA7kCoHNj8" /> + .sidebar-nav { + padding: 9px 0; + } + </style> + <link href="css/bootstrap-responsive.min.css" rel="stylesheet"> - <!-- Le styles --> - <link href="css/bootstrap.min.css" rel="stylesheet"> - <style type="text/css"> - body { - padding-top: 60px; - padding-bottom: 40px; - } - .sidebar-nav { - padding: 9px 0; - } - </style> - <link href="css/bootstrap-responsive.min.css" rel="stylesheet"> + <!-- HTML5 shim, for IE6-8 support of HTML5 elements --> + <!--[if lt IE 9]> + <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <!-- More ideas for your <head> here: h5bp.com/d/head-Tips --> - <!-- HTML5 shim, for IE6-8 support of HTML5 elements --> - <!--[if lt IE 9]> - <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> - <![endif]--> - <!-- More ideas for your <head> here: h5bp.com/d/head-Tips --> + <!-- All JavaScript at the bottom, except this Modernizr build. + Modernizr enables HTML5 elements & feature detects for optimal performance. + Create your own custom Modernizr build: www.modernizr.com/download/ + <script src="js/libs/modernizr-2.5.3.min.js"></script>--> + <script src="js/jquery.js"></script> + <script type="text/javascript" src="js/flotr2.min.js"></script> - <!-- All JavaScript at the bottom, except this Modernizr build. - Modernizr enables HTML5 elements & feature detects for optimal performance. - Create your own custom Modernizr build: www.modernizr.com/download/ - <script src="js/libs/modernizr-2.5.3.min.js"></script>--> - <script src="js/jquery.js"></script> - <script type="text/javascript" src="js/flotr2.min.js"></script> - -</head> -<body> - <div class="navbar navbar-inverse navbar-fixed-top"> - <div class="navbar-inner"> - <div class="container-fluid"> - <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - </a> - <a class="brand" href="#">Australian Disclosure Logs</a> - <div class="nav-collapse collapse"> - <p class="navbar-text pull-right"> - Check out our subsites on: -<a href="http://orgs.disclosurelo.gs">Government Agencies</a> -• <a href="http://lobbyists.disclosurelo.gs">Political Lobbyists</a> -• <a href="http://contracts.disclosurelo.gs">Government Contracts and Spending</a> + </head> + <body> + <div class="navbar navbar-inverse navbar-fixed-top"> + <div class="navbar-inner"> + <div class="container-fluid"> + <!--<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </a> --> + <a class="brand" href="#">Australian Disclosure Logs</a> - </p> - <ul class="nav"> - <li><a href="index.php">Home</a></li> - <li><a href="disclogsList.php">List of Disclosure Logs</a></li> - <li><a href="about.php">About</a></li> - - </ul> - </div><!--/.nav-collapse --> + <div class="nav-collapse collapse"> + <p class="navbar-text pull-right"> + <small> + Subsites on: + </small> + <a href="http://orgs.disclosurelo.gs">Government Agencies</a> + • <a href="http://lobbyists.disclosurelo.gs">Political Lobbyists</a> + • <a href="http://contracts.disclosurelo.gs">Government Contracts and Spending</a> + + </p> + <ul class="nav"> + <li><a href="agency.php">By Agency</a></li> + <li><a href="date.php">By Date</a></li> + <li><a href="disclogsList.php">List of Disclosure Logs</a></li> + <li><a href="charts.php">Charts</a></li> + <li><a href="about.php">About</a></li> + + </ul> + </div> + <!--/.nav-collapse --> + </div> </div> - </div> </div> - <div class="container"> - <?php + <div class="container"> +<?php } -function include_footer_documents() { - ?> - </div> <!-- /container --> - <hr> - <footer> - <p>© Company 2012</p> - </footer> - <script type="text/javascript"> +function include_footer_documents() +{ + global $ENV; + ?> + </div> <!-- /container --> + <hr> - var _gaq = _gaq || []; - _gaq.push(['_setAccount', 'UA-12341040-4']); - _gaq.push(['_setDomainName', 'disclosurelo.gs']); - _gaq.push(['_setAllowLinker', true]); - _gaq.push(['_trackPageview']); + <footer> + <p>Not affiliated with or endorsed by any government agency.</p> + </footer> + <?php + if ($ENV != "DEV") { + echo "<script type='text/javascript'> - (function() { - var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; - ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; - var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); - })(); + var _gaq = _gaq || []; + _gaq.push(['_setAccount', 'UA-12341040-4']); + _gaq.push(['_setDomainName', 'disclosurelo.gs']); + _gaq.push(['_setAllowLinker', true]); + _gaq.push(['_trackPageview']); -</script> + (function() { + var ga = document.createElement('script'); + ga.type = 'text/javascript'; + ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(ga, s); + })(); + + </script>"; + } + ?> <!-- Le javascript ================================================== --> <!-- Placed at the end of the document so the pages load faster --> -<!-- - <script src="js/bootstrap-transition.js"></script> - <script src="js/bootstrap-alert.js"></script> - <script src="js/bootstrap-modal.js"></script> - <script src="js/bootstrap-dropdown.js"></script> - <script src="js/bootstrap-scrollspy.js"></script> - <script src="js/bootstrap-tab.js"></script> - <script src="js/bootstrap-tooltip.js"></script> - <script src="js/bootstrap-popover.js"></script> - <script src="js/bootstrap-button.js"></script> - <script src="js/bootstrap-collapse.js"></script> - <script src="js/bootstrap-carousel.js"></script> - <script src="js/bootstrap-typeahead.js"></script>--> + <!-- + <script src="js/bootstrap-transition.js"></script> + <script src="js/bootstrap-alert.js"></script> + <script src="js/bootstrap-modal.js"></script> + <script src="js/bootstrap-dropdown.js"></script> + <script src="js/bootstrap-scrollspy.js"></script> + <script src="js/bootstrap-tab.js"></script> + <script src="js/bootstrap-tooltip.js"></script> + <script src="js/bootstrap-popover.js"></script> + <script src="js/bootstrap-button.js"></script> + <script src="js/bootstrap-collapse.js"></script> + <script src="js/bootstrap-carousel.js"></script> + <script src="js/bootstrap-typeahead.js"></script>--> - </body> -</html> + </body> + </html> <?php } -function displayLogEntry($row, $idtoname) { - echo "<div><h2>".$row->value->date.": ".$row->value->title." (".$idtoname[$row->value->agencyID].")</h2> <p>".str_replace("\n","<br>",$row->value->description); -if (isset($row->value->notes)) { -echo " <br>Note: ".$row->value->notes; -} -echo "</p>"; - -if (isset($row->value->links)){ -echo "<h3>Links/Documents</h3><ul>"; -foreach ($row->value->links as $link) { - echo "<li><a href='$link'>".$link."</a></li>"; +function truncate($string, $length, $stopanywhere = false) +{ + //truncates a string to a certain char length, stopping on a word if not specified otherwise. + if (strlen($string) > $length) { + //limit hit! + $string = substr($string, 0, ($length - 3)); + if ($stopanywhere) { + //stop anywhere + $string .= '...'; + } else { + //stop on a word. + $string = substr($string, 0, strrpos($string, ' ')) . '...'; + } + } + return $string; } - echo "</ul>"; -} - echo "<small><A href='".$row->value->url."'>View original source...</a> ID: ".$row->value->docID."</small>"; -echo"</div>"; +function displayLogEntry($row, $idtoname) +{ + $result = ""; + $result .= '<div itemscope itemtype="http://schema.org/Article">'; + $result .= '<h2><a href="http://disclosurelo.gs/view.php?id=' . $row->value->_id . '"> <span itemprop="datePublished">' . $row->value->date . "</span>: <span itemprop='name headline'>" . truncate($row->value->title, 120) . "</span>"; + $result .= ' (<span itemprop="author publisher creator">' . $idtoname[$row->value->agencyID] . '</span>)</a></h2>'; + $result .= "<p itemprop='description articleBody text'> Title: " . $row->value->title . "<br/>"; + if (isset($row->value->description)) { + $result .= str_replace("\n", "<br>", preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "", trim($row->value->description))); + } + if (isset($row->value->notes)) { + $result .= " <br>Note: " . $row->value->notes; + } + $result .= "</p>"; + + if (isset($row->value->links)) { + $result .= '<h3>Links/Documents</h3><ul itemprop="associatedMedia">'; + foreach ($row->value->links as $link) { + $result .= '<li itemscope itemtype="http://schema.org/MediaObject"><a href="' . htmlspecialchars($link) . '" itemprop="url contentURL">' . htmlspecialchars($link) . "</a></li>"; + } + + $result .= "</ul>"; + } + $result .= "<small><A itemprop='url' href='" . $row->value->url . "'>View original source...</a> ID: " . strip_tags($row->value->docID) . "</small>"; + $result .= "</div>\n"; + return $result; }