Code: 12alarmy

Z Motława

12alarmy używa tabeli _db_alert do przygotowania maila przy wykorzystaniu bazy MySQL oraz basha w systemie Linux.


struktura tabeli

FieldTypeNullKeyDefaultExtra
guid varchar(38) NO PRI    
medium int(11) NO   0  
cron varchar(50) NO   daily  
sort varchar(20) NO      
init_sql text YES   (NULL)  
finish_sql text YES   (NULL)  
mailto_sql text YES   (NULL)  
mailcc_sql text YES   (NULL)  
mailfrom_sql text YES   (NULL)  
subject_sql text YES   (NULL)  
header_sql text YES   (NULL)  
body_sql text YES   (NULL)  
footer_sql text YES   (NULL)  
attachments_sql text YES   (NULL)  
param1_sql text YES   (NULL)  
param2_sql text YES   (NULL)  
action_success_sql text YES   (NULL)  
action_fail_sql text YES   (NULL)  

Przykładowy kod przygotowujący (skrypt SH)

#!/bin/sh

html_head='<HTML><HEAD> <META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=Windows-1250\"> </HEAD><BODY>'
html_foot='</BODY></HTML>'

mysql wegasa -vvv <<EOF
set names utf8;
delete from _db_alert where guid like 'PFRON';
insert into _db_alert values (
'PFRON',
0,'daily','1',
'',
'',
#to
'select "<xxx@yyy.zzz.pl>"',
#cc
'select "<aaa@bbb.ccc.pl>"',
#'',
#from
'select "Powiadomienia Motlawa <no-reply@yyy.zzz.pl>"',
'select "Log ulg PFRON"',
'select \'${html_head}<H3>Operacje PFRON z niezaznaczoną opcją "wydrukowana i wysłana"</H3>\'',
#body
'SELECT o.nrdokfin,up.kwota, up.ulga, o.datawystaw, o.dataplatnosci, K.nazwa \
 FROM ulga_pfron up LEFT JOIN kontrah K ON K.GUID = up.kontrGUID LEFT JOIN opng o ON o.GUID = up.operGUID  WHERE o.nrdokfin<>"" and up.PrintSend = 0 \
 ORDER BY datawystaw, dataplatnosci ',
#footer
'select \'<BR><BR><B><I>Wasz Automatyczny Serwis Powiadomień</B>${html_foot}</I>\'',
# attachment:
'',
# param1:
'',
'',
'',
''
);

EOF