function mail_message($to, $subject, $body) { $boundary = md5(uniqid(rand())); $email = "\n--{$boundary}\n"; $email .= generate_plain_text_email($subject, $body); $email .= "\n--{$boundary}\n"; $email .= generate_email($subject, $body); $email .= "\n--{$boundary}--\n"; $headers = array("Message-ID" => "<" . time() . "@" . $_SERVER["SERVER_ADDR"] . ">", "Date" => date(DATE_RFC2822), "From" => "The Unify Team<*****@*****.**>", "MIME-Version" => "1.0", "Content-type" => "multipart/alternative; boundary=\"{$boundary}\"", "Reply-To" => "The Unify Team<*****@*****.**>"); $str_headers = ""; foreach ($headers as $key => $header) { $str_headers .= $key . ": " . $header . "\n"; } // echo $str_headers.$email; $success = mail($to, "Unify - " . $subject, $email, $str_headers); // chdir("../../../php/"); // include_once("Mail.php"); // $smtp = Mail::factory("smtp", array ("host" => "localhost")); // $success = $smtp->send($to, $headers, $email); // chdir("../public_html/unify/script/"); if ($success) { // echo "success"; error_log("Mail Success - Address:" . $to . " Subject:" . $subject); return true; } else { // echo "fail"; error_log("Mail Failure - Address:" . $to . " Subject:" . $subject); return false; } }
/** * Run the database seeds. * * @return void */ public function run() { $access_token = generate_access_token(); $email = 'a1t1-' . generate_email() . '@telegramlogin.com'; $user = new User(); $user->name = 'david pichsenmeister'; $user->username = '******'; $user->email = $email; $user->telegram_id = 41478911; $user->access_token = $access_token; $user->save(); $app = new App(); $app->user_id = $user->id; $app->name = 'Telegram Login'; $app->client_id = 314159265; $app->client_secret = generate_client_secret(); $app->website = env('URL'); $app->redirect_url = env('URL') . '/login'; $app->save(); $tg = new TelegramUser(); $tg->telegram_id = 41478911; $tg->name = 'david pichsenmeister'; $tg->username = '******'; $tg->save(); $auth = new Auth(); $auth->app_id = $app->id; $auth->telegram_user_id = $tg->id; $auth->email = $email; $auth->access_token = $access_token; $auth->save(); }
private function start($message, $tg) { $key = trim(str_replace('/start', '', $message['text'])); $token = Token::findByToken($key); $app = App::findOrFail($token->app_id); try { $auth = Auth::findByAppAndTelegramUser($app, $tg); } catch (ModelNotFoundException $e) { $auth = new Auth(); $auth->app_id = $app->id; $auth->telegram_user_id = $tg->id; $auth->email = 'a' . $app->id . 't' . $tg->id . '-' . generate_email() . '@telegramlogin.com'; } $auth->access_token = generate_access_token(); $auth->active = true; $auth->save(); $code = Code::create(array('app_id' => $app->id, 'auth_id' => $auth->id, 'code' => generate_code())); $url = $app->redirect_url . '?code=' . $code->code; if ($token->query_string) { $url .= '&' . $token->query_string; } $text = 'Please click this link to finish your signup at *' . $app->name . '*: ' . PHP_EOL; $text .= '[Click here](' . $url . ')'; $params = array('text' => $text, 'chat_id' => $tg->telegram_id); $this->send($params); $token->delete(); if ($app->client_id == 314159265) { $tg->status = str_replace('state=', '', $token->query_string); } else { $tg->status = 'access_granted'; } $tg->save(); }
function generate_request($email, &$db) { //echo "generate request function called. <br><br>"; $user_confirmed = user_exists($email, $db); if ($user_confirmed[0]) { $requestkey = mt_rand(10000000, mt_getrandmax()); $time = time(); //echo "user confirmed to exist; request key generated: $requestkey <br><br>"; try { $sql = 'INSERT INTO password_reset_requests (email, requestkey, time) VALUES (:email, :requestkey, :time)'; $stmt = $db->prepare($sql); $stmt->bindValue(':email', $email); $stmt->bindValue(':requestkey', $requestkey); $stmt->bindValue(':time', $time); $stmt->execute(); $errorInfo = $stmt->errorInfo(); if (isset($errorInfo[2])) { $error = $errorInfo[2]; } } catch (Exception $e) { $error = $e->getMessage(); } if (isset($error)) { //echo "database error in request insertion: $error <br><br>"; return [false, $error]; } $requestid = $db->lastInsertId(); if (!isset($requestid)) { //echo "error: no request id returned by db. <br><br>"; return [false, 'Error: Could not add request to database.']; } else { //echo "made it! have a request id: $requestid <br><br>"; $key = $requestid . '-' . $requestkey; //echo "about to generate an email with address $email and key $key <br><br>"; if (generate_email($email, $key)) { //echo "email sent. <br><br>"; return [true]; } else { //echo "email not sent. <br><br>"; return [false, "Error: email could not be sent."]; } } } else { //echo "user does not exist. <br><br>"; return $user_confirmed; // already in the form [false, error] } }
//$stm->bind_param("is",$time,$status); $response = $stm->execute(); echo $query; if ($response) { echo "successfull prepared statement<br>"; } else { echo "unsuccessful prepared statement<br>"; } $result = $stm->get_result(); //var_dump($result->fetch_assoc()); $msg = ''; /* now you can fetch the results into an array - NICE */ while ($myrow = $result->fetch_assoc()) { // use your $myrow array as you would with any other fetch if ($myrow["email"] != 'a' && $myrow["email"] != 'az') { $questions = get_questions($myrow["category"]); $email_html = generate_email($questions, $myrow["category"], $myrow["email"]); $status = send_questions($myrow["email"], $email_html, "Daily Subliminal Primes"); if ($status) { //echo "email sent"; $msg .= "\nemail sent successfully to " . $myrow["email"] . " \t for category " . $myrow["category"] . "\t" . strtolower(date("c")) . "\n"; // echo "email sent successfully to ".$myrow["email"]." \t for category ".$myrow["category"]."\n"; } else { $msg .= "\nemail unsuccessfully to " . $myrow["email"] . " \t for category " . $myrow["category"] . "\n"; } } } echo $msg; die; //fwrite($out,$msg); //fclose($out);
private function start($message) { $key = trim(str_replace('/start', '', $message['text'])); $token = Token::findByToken($key); $app = App::findOrFail($token->app_id); $from = $message['from']; $telegramId = $from['id']; $telegramName = $from['first_name']; if (array_key_exists('last_name', $from)) { $telegramName .= ' ' . $from['last_name']; } if (array_key_exists('username', $from)) { $username = $from['username']; } try { $tg = TelegramUser::findByTelegramId($telegramId); } catch (ModelNotFoundException $e) { $tg = new TelegramUser(); $tg->telegram_id = $telegramId; } $tg->name = $telegramName; $tg->save(); if ($tg->status != '/start') { $tg->status = '/start'; $tg->save(); if (isset($username)) { $tg->username = $username; } try { $auth = Auth::findByAppAndTelegramUser($app, $tg); } catch (ModelNotFoundException $e) { $auth = new Auth(); $auth->app_id = $app->id; $auth->telegram_user_id = $tg->id; $auth->email = generate_email() . '-' . $app->id . '-' . $tg->id . '@telegramlogin.com'; } $auth->access_token = generate_access_token(); $auth->active = true; $auth->save(); $code = Code::create(array('app_id' => $app->id, 'auth_id' => $auth->id, 'code' => generate_code())); $url = $app->redirect_url . '?code=' . $code->code; if ($token->query_string) { $url .= '&' . $token->query_string; } $text = 'Please click this link to finish your signup at *' . $app->name . '*: ' . PHP_EOL; $text .= '[Click here](' . $url . ')'; $params = array('text' => $text, 'chat_id' => $telegramId); $success = false; $trys = 0; while (!$success && $trys < 5) { $success = $this->send($params)['ok']; sleep(1); $trys++; } $token->delete(); if ($app->client_id == 314159265) { $tg->status = str_replace('state=', '', $token->query_string); } else { $tg->status = 'access_granted'; } $tg->save(); } }