![]() |
db::Sender Class ReferenceDatabase sender table. More...
Inheritance diagram for db::Sender: ![]() ![]()
Detailed DescriptionDatabase sender table.
Definition at line 31 of file Sender.h. Constructor & Destructor Documentation
Definition at line 28 of file Sender.cpp. References m_from_spam, m_host_spam, m_mail_spam, db::Table::m_new, and m_subject_spam. 00028 : Table(db) 00029 { 00030 m_new = true; 00031 m_host_spam = false; 00032 m_mail_spam = false; 00033 m_from_spam = false; 00034 m_subject_spam = false; 00035 }
Definition at line 38 of file Sender.cpp. References Spawn(). 00038 : Table(db) 00039 { 00040 std::string sql; 00041 sql = "select * from mailinst where id=" + l2string(id); 00042 Spawn(sql); 00043 }
Definition at line 52 of file Sender.cpp. References m_h_from, m_h_subject, m_h_to, m_host, m_mail, m_rcpt, Spawn(), and db::Table::sqlsafe(). 00057 : Table(db) 00058 { 00059 std::string sql; 00060 sql = "select * from mailinst where host='" + sqlsafe(host) + "' and "; 00061 sql += "mail='" + sqlsafe(mail) + "' and "; 00062 sql += "rcpt='" + sqlsafe(rcpt) + "' and "; 00063 sql += "h_from='" + sqlsafe(h_from) + "' and "; 00064 sql += "h_to='" + sqlsafe(h_to) + "' and "; 00065 sql += "h_subject='" + sqlsafe(h_subject) + "'"; 00066 Spawn(sql); 00067 m_host = host; 00068 m_mail = mail; 00069 m_rcpt = rcpt; 00070 m_h_from = h_from; 00071 m_h_to = h_to; 00072 m_h_subject = h_subject; 00073 }
Member Function Documentation
Implements db::Table. Definition at line 123 of file Sender.cpp. References Query::execute(), db::Table::GetDatabase(), Query::insert_id(), m_from_spam, m_h_from, m_h_subject, m_h_to, m_host, m_host_spam, m_id, m_mail, m_mail_spam, db::Table::m_new, m_rcpt, m_subject_spam, and db::Table::sqlsafe(). 00124 { 00125 Query q(GetDatabase()); 00126 std::string sql; 00127 if (m_new) 00128 { 00129 sql = "insert into mailinst values(NULL" 00130 ",'" + sqlsafe(m_host) + "'" 00131 ",'" + sqlsafe(m_mail) + "'" 00132 ",'" + sqlsafe(m_rcpt) + "'" 00133 ",'" + sqlsafe(m_h_from) + "'" 00134 ",'" + sqlsafe(m_h_to) + "'" 00135 ",'" + sqlsafe(m_h_subject) + "'"; 00136 sql += m_host_spam ? ",1" : ",0"; 00137 sql += m_mail_spam ? ",1" : ",0"; 00138 sql += m_from_spam ? ",1" : ",0"; 00139 sql += m_subject_spam ? ",1" : ",0"; 00140 sql += ")"; 00141 printf("SQL: '%s'\n",sql.c_str()); 00142 q.execute(sql); 00143 m_id = q.insert_id(); 00144 } 00145 else 00146 { 00147 sql = "update mailinst set " 00148 "host='" + sqlsafe(m_host) + "'," 00149 "mail='" + sqlsafe(m_mail) + "'," 00150 "rcpt='" + sqlsafe(m_rcpt) + "'," 00151 "h_from='" + sqlsafe(m_h_from) + "'," 00152 "h_to='" + sqlsafe(m_h_to) + "'," 00153 "h_subject='" + sqlsafe(m_h_subject) + "',"; 00154 sql += m_host_spam ? "host_spam=1," : "host_spam=0,"; 00155 sql += m_mail_spam ? "mail_spam=1," : "mail_spam=0,"; 00156 sql += m_from_spam ? "from_spam=1," : "from_spam=0,"; 00157 sql += m_subject_spam ? "subject_spam=1 " : "subject_spam=0 "; 00158 sql = sql + "where id=" + l2string(m_id); 00159 printf("SQL: '%s'\n",sql.c_str()); 00160 q.execute(sql); 00161 } 00162 }
Implements db::Table. Definition at line 95 of file Sender.cpp. References Query::fetch_row(), Query::free_result(), Query::get_result(), db::Table::GetDatabase(), Query::getstr(), Query::getval(), m_from_spam, m_h_from, m_h_subject, m_h_to, m_host, m_host_spam, m_id, m_mail, m_mail_spam, db::Table::m_new, m_rcpt, and m_subject_spam. Referenced by Sender(). 00096 { 00097 Query q(GetDatabase()); 00098 m_new = true; 00099 m_host_spam = false; 00100 m_mail_spam = false; 00101 m_from_spam = false; 00102 m_subject_spam = false; 00103 q.get_result(sql); 00104 if (q.fetch_row()) 00105 { 00106 m_id = q.getval(); 00107 m_host = q.getstr(); 00108 m_mail = q.getstr(); 00109 m_rcpt = q.getstr(); 00110 m_h_from = q.getstr(); 00111 m_h_to = q.getstr(); 00112 m_h_subject = q.getstr(); 00113 m_host_spam = q.getval() ? true : false; 00114 m_mail_spam = q.getval() ? true : false; 00115 m_from_spam = q.getval() ? true : false; 00116 m_subject_spam = q.getval() ? true : false; 00117 m_new = false; 00118 } 00119 q.free_result(); 00120 }
Member Data Documentation
The documentation for this class was generated from the following files: |