#!/usr/bin/ruby require 'rubygems' require 'dbi' require 'cgi' require 'conf' db=$db page="Blagues" subpage="Derniers ajouts" require 'header' puts header_bdg() cgi=$cgi if cgi['page'] =~ /\d+/ current_page = cgi['page'].to_i else current_page = 1 end require 'menu' puts menu_bdg(page,subpage) puts <<HTML_BDG <table id="milieu"> <tr> <td id="gauche"><h1><a href="latest.cgi">Dernières blagues ajoutés</a></h1> <div id="pageq"> <form method="get" action="latest.cgi"> <fieldset> <input type="submit" value=">>" /> <input type="text" name="page" size="15" /> </fieldset> </form> </div> <div id="page"> HTML_BDG num_page = 0 db.execute("SELECT count(id) FROM blague").each { |row| num_page = row[0].to_s.chop.to_i+1 } if current_page > num_page then current_page = num_page end i = 0 if current_page > 5 then i = current_page puts <<HTML_BDG <a class="page" href="?page=1">1</a> HTML_BDG end until i == num_page i = i+1 if i > (current_page+10) and num_page/2 > 10 then puts <<HTML_BDG <a class="page" href="?page=#{(num_page+current_page)/2}">#{(num_page+current_page)/2}</a> HTML_BDG break elsif i > 5 and current_page > 5 then puts <<HTML_BDG <a class="page" href="?page=#{i-4}">#{i-4}</a> HTML_BDG elsif i < 11 and current_page <= 5 puts <<HTML_BDG <a class="page" href="?page=#{i}">#{i}</a> HTML_BDG end end if num_page > 10 then puts <<HTML_BDG <a class="page" href="?page=#{num_page}">#{num_page}</a> HTML_BDG end puts" </div>" i = 0 db.execute("SELECT * FROM blague WHERE id <= #{current_page-1}9 AND id >= #{current_page-1}0 ORDER BY id DESC LIMIT 10").each { |row| unless row[1] == "" if i.modulo(2) == 1 parity = " impair" else parity = "" end i = i + 1 puts <<HTML_BDG <div class="Blague#{parity}"> <div class="titre"><h3>\##{row[0]} - #{CGI::escapeHTML(row[1])} <span class="vote">( #{row[5]} / #{row[6]} )</span></h3></div> <p class="contenu">#{CGI::escapeHTML(row[3]).gsub(/\r\n|\r|\n/,"<br />")}</p><p class="by">posté par #{CGI::escapeHTML(row[2])} le #{row[4]}</p> </div> HTML_BDG end } require 'infos' puts infos_bdg() puts <<HTML_BDG </tr> </table> </body> </html> HTML_BDG