示例#1
0
function send_daily_birthday_alert(Member $member)
{
    $template = file_get_contents(getcwd() . '/scripts/email_templates/cron_daily.php');
    $mail = email_init();
    $mail->Subject = "Happy Birthday " . $member->first_name . " - Online Birthday Manager";
    $mail->addAddress($member->email);
    foreach ($member->birthday_members as $member_id) {
        $mail->addCC(get_team_member_email_by_id($member_id));
    }
    $body = str_replace("{first_name}", $member->first_name, $template);
    $mail->Body = $body;
    if ($mail->send()) {
        error_log("email sent");
    } else {
        error_log("mail not sent");
        error_log($mail->ErrorInfo);
    }
}
示例#2
0
function handle_post($query, $team_name, $team_admin_id, $email, $password, $official_dob, $first_name, $last_name, $team_id, $member_id, $fund, $birthday_of_member_id, $cake_amount, $other_expense, $celebration_date, $attendees_member_id, $reset_code, $password1, $password2, $message)
{
    switch ($query) {
        case "teams":
            $team_obj = new Team();
            $team_obj->team_name = $team_name;
            $team_obj->admin_id = $team_admin_id;
            $status_code = $team_obj->process_post("create-team");
            show_response($status_code);
            return $status_code;
            break;
        case "team-message":
            $team_obj = new Team();
            $team_obj->team_id = $team_id;
            $team_obj->message = $message;
            $status_code = $team_obj->process_post("team-message");
            show_response($status_code);
            return $status_code;
            break;
        case "login":
            $member_obj = new Member();
            $member_obj->email = $email;
            $member_obj->password = $password;
            $json_login_result = json_encode($member_obj->process_post("login"));
            $status_code = json_decode($json_login_result)->status_code;
            show_response($status_code);
            echo $json_login_result;
            return $status_code;
            break;
        case "autologin":
            $member_obj = new Member();
            $member_obj->email = $email;
            $member_obj->reset_code = $reset_code;
            $json_login_result = json_encode($member_obj->process_post("autologin"));
            $status_code = json_decode($json_login_result)->status_code;
            show_response($status_code);
            echo $json_login_result;
            return $status_code;
            break;
        case "reset-password-link":
            $member_obj = new Member();
            $member_obj->email = $email;
            $json_result = json_encode($member_obj->process_post("reset-password-link"));
            $status_code = json_decode($json_result)->status_code;
            show_response($status_code);
            echo $json_result;
            return $status_code;
        case "reset-password":
            $member_obj = new Member();
            $member_obj->email = $email;
            $member_obj->reset_code = $reset_code;
            $member_obj->reset_password1 = $password1;
            $member_obj->reset_password2 = $password2;
            $json_login_result = json_encode($member_obj->process_post("reset-password"));
            $status_code = json_decode($json_login_result)->status_code;
            show_response($status_code);
            echo $json_login_result;
            return $status_code;
            break;
        case "register":
            $member_obj = new Member();
            $member_obj->password = $password;
            $member_obj->email = $email;
            $member_obj->official_dob = $official_dob;
            $member_obj->first_name = ucfirst($first_name);
            $member_obj->last_name = ucfirst($last_name);
            $member_obj->team_id = $team_id;
            $member_obj->team_name = $team_name;
            $json_register_result = json_encode($member_obj->process_post("register"));
            $status_code = json_decode($json_register_result)->status_code;
            show_response($status_code);
            echo $json_register_result;
            return $status_code;
            break;
        case "funds":
            $member_obj = new Member();
            $member_obj->member_id = $member_id;
            $member_obj->team_id = $team_id;
            $member_obj->fund = $fund;
            $status_code = $member_obj->process_post("funds") == true ? 200 : 400;
            show_response($status_code);
            return $status_code;
            break;
        case "join-team":
            $member_obj = new Member();
            $member_obj->member_id = $member_id;
            $member_obj->team_id = $team_id;
            $status_code = $member_obj->process_post("join-team");
            show_response($status_code);
            return $status_code;
            break;
        case "leave-team":
            $member_obj = new Member();
            $member_obj->member_id = $member_id;
            $member_obj->team_id = $team_id;
            $member_obj->first_name = get_team_member_name_by_team_member_id($member_obj->member_id);
            $member_obj->team_name = get_team_name_by_team_id($member_obj->team_id);
            $member_obj->email = get_team_member_email_by_id($member_obj->member_id);
            $status_code = $member_obj->process_post("leave-team");
            show_response($status_code);
            return $status_code;
        case "invite":
            $member_obj = new Member();
            $member_obj->email = $email;
            $member_obj->team_id = $team_id;
            $status_code = $member_obj->process_post("invite");
            show_response($status_code);
            return $status_code;
            break;
        case "celebrations":
            $celebration_obj = new Celebration();
            $celebration_obj->birthday_of_member_id = $birthday_of_member_id;
            $celebration_obj->cake_amount = $cake_amount;
            $celebration_obj->other_expense = $other_expense;
            $celebration_obj->celebration_date = $celebration_date;
            $celebration_obj->total_attendees = count($attendees_member_id);
            $celebration_obj->team_id = $team_id;
            $celebration_obj->attendees_member_id_array = $attendees_member_id;
            $status_code = $celebration_obj->process_post("celebrate");
            show_response($status_code);
            return $status_code;
            break;
        case "members":
            $member_obj = new Member();
            $member_obj->member_id = $member_id;
            $member_obj->email = $email;
            $member_obj->official_dob = $official_dob;
            $member_obj->first_name = $first_name;
            $member_obj->last_name = $last_name;
            $status_code = $member_obj->process_post("edit-member");
            show_response($status_code);
            return $status_code;
            break;
        default:
            break;
    }
}
示例#3
0
 public function process_post($action)
 {
     switch ($action) {
         case "login":
             $status = login_member($this);
             return $status;
             break;
         case "autologin":
             $status = autologin_member($this);
             return $status;
             break;
         case "reset-password-link":
             $status = get_reset_password_code($this);
             if ($status["status_code"] == 200) {
                 $this->first_name = get_team_member_name_by_email($this->email);
                 $this->reset_code = $status["reset_code"];
                 $this->reset_password_link = json_decode(file_get_contents("env.json"))->website_host . "/reset-password.php?code=" . $this->reset_code . "&email=" . $this->email;
                 send_password_reset_code($this);
             }
             return $status;
             break;
         case "reset-password":
             $status = reset_password($this);
             return $status;
             break;
         case "register":
             $status = register_new_member($this);
             if ($status["status_code"] == 200) {
                 if ($this->team_id != "" && $this->team_name == get_team_name_by_team_id($this->team_id)) {
                     $this->member_id = get_team_member_id_by_email($this->email);
                     join_team($this);
                 }
                 send_registration_success_email($this);
             }
             return $status;
             break;
         case "funds":
             $this->email = get_team_member_email_by_id($this->member_id);
             $status = post_add_fund($this);
             send_add_fund_email($this);
             return $status;
             break;
         case "join-team":
             $this->first_name = get_team_member_name_by_team_member_id($this->member_id);
             $this->team_name = get_team_name_by_team_id($this->team_id);
             $this->email = get_team_member_email_by_id($this->member_id);
             $status = join_team($this);
             send_join_team_email($this);
             return $status;
             break;
         case "leave-team":
             $status = leave_team($this);
             send_leave_team_email($this);
             return $status;
             break;
         case "invite":
             $this->team_name = get_team_name_by_team_id($this->team_id);
             if ($this->team_name != "") {
                 $this->invite_team_link = json_decode(file_get_contents("env.json"))->website_host . "/index.php?team-id=" . $this->team_id . "&team-name=" . urlencode($this->team_name);
                 $status = invite_to_team($this);
                 return $status["status_code"];
             } else {
                 return 400;
             }
             break;
         case "edit-member":
             $status = edit_member($this);
             return $status == true ? 200 : 400;
             break;
         default:
             break;
     }
 }