function _xConfirmShow() { global $t, $C; require_once 'textdb.php'; $db = new RegisterConfirmsDB(); $db->DeleteExpired(); $confirm = $db->Retrieve($_REQUEST['id']); require_once 'validator.php'; $v =& Validator::Get(); $v->Register(empty($confirm), VT_IS_FALSE, 'Invalid or expired confirmation code'); if (!$v->Validate()) { $t->Assign('g_invalid_confirm', true); } else { $db->Delete($_REQUEST['id']); $defaults = unserialize(file_get_contents(FILE_NEW_TRADE_DEFAULTS)); require_once 'dirdb.php'; $password = get_random_password(); $db = new TradeDB(); $trade = $db->Update($confirm['domain'], array('status' => $defaults['status'], 'timestamp_autostop' => time(), 'password' => sha1($password))); $trade['password'] = $password; $t->AssignByRef('g_trade', $trade); require_once 'mailer.php'; if ($C['flag_register_email_user'] && !string_is_empty($trade['email'])) { $m = new Mailer(); $m->Mail('email-register-complete.tpl', $t, $trade['email'], $trade['email']); } if ($C['flag_register_email_admin']) { $m = new Mailer(); $m->Mail('email-register-admin.tpl', $t, $C['email_address'], $C['email_name']); } } $t->Display('register-confirm.tpl'); }
function trade_add(&$data, $registered = false) { global $C; require_once 'dirdb.php'; require_once 'mailer.php'; require_once 'template.php'; $t = new Template(); $t->AssignByRef('g_config', $C); $t->AssignByRef('g_trade', $data); $db = new TradeDB(); $db->Add(trade_prepare_data($data)); // Create stats file $packed_record = trade_packed_record(); $fp = fopen(DIR_TRADE_STATS . "/{$data['domain']}", 'w'); for ($i = 0; $i < HOURS_PER_DAY + MINUTES_PER_DAY; $i++) { fwrite($fp, $packed_record, RECORD_SIZE_STATS); } fclose($fp); @chmod(DIR_TRADE_STATS . "/{$data['domain']}", 0666); // Create log files file_create(DIR_TRADE_STATS . "/{$data['domain']}-clicks"); file_create(DIR_TRADE_STATS . "/{$data['domain']}-history"); file_create(DIR_TRADE_STATS . "/{$data['domain']}-in"); file_create(DIR_TRADE_STATS . "/{$data['domain']}-out"); if ($data['flag_confirm']) { require_once 'textdb.php'; $data['confirm_id'] = md5(uniqid(rand(), true)); $confdb = new RegisterConfirmsDB(); $confdb->Add(array('confirm_id' => $data['confirm_id'], 'domain' => $data['domain'], 'timestamp' => time())); $m = new Mailer(); $m->Mail('email-register-confirm.tpl', $t, $data['email'], $data['email']); } else { if ($C['flag_register_email_user'] && !string_is_empty($data['email']) && $registered) { $m = new Mailer(); $m->Mail('email-register-complete.tpl', $t, $data['email'], $data['email']); } if ($C['flag_register_email_admin']) { $m = new Mailer(); $m->Mail('email-register-admin.tpl', $t, $C['email_address'], $C['email_name']); } } }