X-Git-Url: https://iankelling.org/git/?p=iankelling.org;a=blobdiff_plain;f=_site%2Fcgi%2Fcomment;h=149799447b0afee0640d587c226d502cd43f8a31;hp=4b14c3c7c7bd9c3dfa9337a8494656913f662917;hb=e81919074554ec1e719f1431667299c9c84dc854;hpb=e02cd51eb9c9ac3f84a84fefd567d7217e34bc38 diff --git a/_site/cgi/comment b/_site/cgi/comment index 4b14c3c..1497994 100755 --- a/_site/cgi/comment +++ b/_site/cgi/comment @@ -26,7 +26,6 @@ require 'cgi' require 'fileutils' require 'time' require 'sqlite3' - Dir.chdir(File.join(File.dirname(__FILE__), '..')) require '../b' @@ -85,7 +84,7 @@ def do_captcha

#{captcha_q}

- + @@ -142,6 +141,10 @@ if COMMENT_TXT.length > 1000 or GOTO.length > 150 fail('length of comment or goto is too great') end +if COMMENT_TXT.length <= 2 or COMMENT_TXT =~ /\A\s*\Z/ + fail('not enough content in comment') +end + captchad = false if cgi.has_key?('answer') && cgi.has_key?('question') @@ -300,7 +303,7 @@ $db.execute('insert into c values (NULL, ?, ?, ?, ?, ?)', COMMENT_TXT]) if date - new_count = $db.execute(query + 'and date > ?',date) + new_count = $db.execute(query + 'and date > ?', date) else new_count = $db.execute(query) end @@ -308,27 +311,19 @@ new_count = new_count[0][0] if new_count == 1 require 'net/smtp' - def send_email(opts={}) - opts[:to] ||= 'root' - opts[:server] ||= 'localhost' - opts[:from] ||= 'root' - opts[:from_alias] ||= 'root' - opts[:subject] ||= "test subject" - opts[:body] ||= "" - - msg = < -To: <#{opts[:to]}> -Subject: #{opts[:subject]} - -#{opts[:body]} + to = 'root@' + FQDN + from = 'www-data@' + FQDN + server = 'localhost' + msg = < +To: <#{to}> +Subject: "new comment on #{FQDN}" + +empty body END_OF_MESSAGE - - Net::SMTP.start(opts[:server]) do |smtp| - smtp.send_message msg, opts[:from], opts[:to] - end + Net::SMTP.start(server) do |smtp| + smtp.send_message msg, from, to end - send_email :subject => 'new comments on iankelling.org' end post(md_file)