April 19, 2009 a las 3:59 pm por Edwin Plauchu · Archivado en Programacion
Desbordamiento de buffer con bolitas y palitos
April 17, 2009 a las 9:52 am por Edwin Plauchu · Archivado en Programacion
require 'rubygems'
require 'net/smtp'
require 'postgres'
def send_email( config , to_email , subject , message )
Net::SMTP.start( config['server_smtp'], config['smtp_port'], config['email_from'], config['smtp_user'], config['smtp_password'], :plain) do |smtp|
smtp.open_message_stream('eplauchu@plauchu.com', to_email ) do |f|
f.puts 'From: ' + config['email_from']
f.puts 'To: ' + to_email
f.puts 'Subject: ' + subject
f.puts message
end
end
end
def conection_psql( config )
return conn = PGconn.connect(config['server_db'], config['db_port'], '', '', config['db'], config['db_user'], config['db_password'])
end
my_smtp_config = { "server_smtp" => "siteground246.com",
"smtp_port" => "2525",
"smtp_user" => "eplauchu@plauchu.com",
"smtp_password" => "ktgxxxmty",
"email_from" => "carrito@plauchu.com" }
my_pgsql_config = { "server_db" => "192.168.10.148",
"db_port" => 5432,
"db" => "xxxxx",
"db_user" => "xxxxx",
"db_password" => "xxxxx" }
dias = "1"
#res = conection_psql(my_pgsql_config).exec('select * from fn_clientes_para_recordatorio()')
sql_code = "SELECT clientes.nombre_pila || ' ' || clientes.apellido_paterno || ' ' || clientes.apellido_materno AS nombre_completo,
clientes.email , pedidos.numero_pedido
FROM clientes JOIN pedidos ON clientes.id = pedidos.id_cliente
WHERE clientes.activo = true AND pedidos.id_estatus_pedido = id_estatus_pedido
AND age(now(),pedidos.momento_creacion) >= ('" + dias + " day')::interval"
res = conection_psql(my_pgsql_config).exec(sql_code)
res.each do |row|
fecha = Time.now.localtime.strftime("%Y-%m-%d")
topico = "tienda.com -- Recordatorio de Pago Pendiente(" + fecha + ")"
mensaje = "El proposito de este correo, es enterarlo a usted Sr(a) " + row[0] + " que actualmente su pedido(" + row[2] + ") se encuentra pendiente de pago"
send_email(my_smtp_config,row[1],topico,mensaje)
end