| | |
| | | $a_save_cols = array('name', 'firstname', 'surname', 'email'); |
| | | |
| | | |
| | | // check input |
| | | if (empty($_POST['_name']) || empty($_POST['_email'])) |
| | | { |
| | | show_message('formincomplete', 'warning'); |
| | | rcmail_overwrite_action($_POST['_cid'] ? 'show' : 'add'); |
| | | return; |
| | | } |
| | | |
| | | |
| | | // update an existing contact |
| | | if ($_POST['_cid']) |
| | | { |
| | |
| | | if (!isset($_POST[$fname])) |
| | | continue; |
| | | |
| | | $a_write_sql[] = sprintf("%s='%s'", $col, addslashes($_POST[$fname])); |
| | | $a_write_sql[] = sprintf("%s=%s", $DB->quoteIdentifier($col), $DB->quote(strip_tags($_POST[$fname]))); |
| | | } |
| | | |
| | | if (sizeof($a_write_sql)) |
| | | { |
| | | $DB->query("UPDATE ".get_table_name('contacts')." |
| | | SET ".join(', ', $a_write_sql)." |
| | | SET changed=now(), ".join(', ', $a_write_sql)." |
| | | WHERE contact_id=? |
| | | AND user_id=? |
| | | AND del<>'1'", |
| | |
| | | { |
| | | // show error message |
| | | show_message('errorsaving', 'error'); |
| | | $_action = 'show'; |
| | | rcmail_overwrite_action('show'); |
| | | } |
| | | } |
| | | |
| | |
| | | else |
| | | { |
| | | $a_insert_cols = $a_insert_values = array(); |
| | | |
| | | // check for existing contacts |
| | | $sql_result = $DB->query("SELECT 1 FROM ".get_table_name('contacts')." |
| | | WHERE user_id=? |
| | | AND email=? |
| | | AND del<>'1'", |
| | | $_SESSION['user_id'], |
| | | $_POST['_email']); |
| | | |
| | | // show warning message |
| | | if ($DB->num_rows($sql_result)) |
| | | { |
| | | show_message('contactexists', 'warning'); |
| | | $_action = 'add'; |
| | | return; |
| | | } |
| | | |
| | | foreach ($a_save_cols as $col) |
| | | { |
| | |
| | | continue; |
| | | |
| | | $a_insert_cols[] = $col; |
| | | $a_insert_values[] = sprintf("'%s'", addslashes($_POST[$fname])); |
| | | $a_insert_values[] = $DB->quote(strip_tags($_POST[$fname])); |
| | | } |
| | | |
| | | if (sizeof($a_insert_cols)) |
| | | { |
| | | $DB->query("INSERT INTO ".get_table_name('contacts')." |
| | | (user_id, ".join(', ', $a_insert_cols).") |
| | | VALUES (?, ".join(', ', $a_insert_values).")", |
| | | (user_id, changed, ".join(', ', $a_insert_cols).") |
| | | VALUES (?, now(), ".join(', ', $a_insert_values).")", |
| | | $_SESSION['user_id']); |
| | | |
| | | $insert_id = $DB->insert_id(); |
| | |
| | | { |
| | | // show error message |
| | | show_message('errorsaving', 'error'); |
| | | $_action = 'add'; |
| | | rcmail_overwrite_action('add'); |
| | | } |
| | | } |
| | | |