"mitarbeit_form.html" ); //---------------------------------------------------------------------------- // Frontend session management rt_session_resume(); //---------------------------------------------------------------------------- // Functions function check_emailsyntax($email) { if ($email == "") { return FALSE; } if (! strstr($email, '@')) { return FALSE; } list($local, $domain) = explode('@', $email); $pattern_local = '^([0-9a-z]*([-|_]?[0-9a-z]+)*)(([-|_]?)\.([-|_]?)[0-9a-z]*([-|_]?[0-9a-z]+)+)*([-|_]?)$'; $pattern_domain = '^([0-9a-z]+([-]?[0-9a-z]+)*)(([-]?)\.([-]?)[0-9a-z]*([-]?[0-9a-z]+)+)*\.[a-z]{2,4}$'; $match_local = eregi($pattern_local, $local); $match_domain = eregi($pattern_domain, $domain); if ($match_local && $match_domain) { return TRUE; } else { return FALSE; } } function feedback_send_email($email_to, $email_from, $subject, $comment) { $return_code = 0; $mail = new smtp_mime_mail(); $mail->headers = "X-Mailer: Workforce Red Tools;"; $mail->to = $email_to; $mail->from = $email_from; $mail->subject = $subject; $mail->sending_domain = SENDING_DOMAIN; $mail->body = $comment."\n"; return $mail->mail_send($return_code); } //---------------------------------------------------------------------------- // Parse parameters // // Note: no rt_clean_string here, since we send a mail from this (and we do // not want HTML entities in mails) $act = isset($HTTP_GET_VARS["act"]) ? $HTTP_GET_VARS["act"] : ""; $email = isset($HTTP_POST_VARS["email"]) ? $HTTP_POST_VARS["email"] : ""; $gender = isset($HTTP_POST_VARS["gender"]) ? $HTTP_POST_VARS["gender"] : ""; $vorname = isset($HTTP_POST_VARS["first_name"]) ? $HTTP_POST_VARS["first_name"] : ""; $nachname = isset($HTTP_POST_VARS["family_name"]) ? $HTTP_POST_VARS["family_name"] : ""; $titel = isset($HTTP_POST_VARS["title"]) ? $HTTP_POST_VARS["title"] : ""; $gebdatdd = isset($HTTP_POST_VARS["bday"]) ? $HTTP_POST_VARS["bday"] : ""; $gebdatmm = isset($HTTP_POST_VARS["bmonth"]) ? $HTTP_POST_VARS["bmonth"] : ""; $gebdatyyyy = isset($HTTP_POST_VARS["byear"]) ? $HTTP_POST_VARS["byear"] : ""; $phone = isset($HTTP_POST_VARS["phone"]) ? $HTTP_POST_VARS["phone"] : ""; $adress = isset($HTTP_POST_VARS["street"]) ? $HTTP_POST_VARS["street"] : ""; $zip = isset($HTTP_POST_VARS["zip_code"]) ? $HTTP_POST_VARS["zip_code"] : ""; $ort = isset($HTTP_POST_VARS["city"]) ? $HTTP_POST_VARS["city"] : ""; $district = isset($HTTP_POST_VARS["district"]) ? $HTTP_POST_VARS["district"] : ""; $newsletter = isset($HTTP_POST_VARS["newsletter"]) ? 1 : 0; $best1 = isset($HTTP_POST_VARS["best1"]) ? 1 : 0; $best1_txt = (1 == $best1) ? " Rettungsdienst\n" : ""; $best2 = isset($HTTP_POST_VARS["best2"]) ? 1 : 0; $best2_txt = (1 == $best2) ? " Zivildienst\n" : ""; $best3 = isset($HTTP_POST_VARS["best3"]) ? 1 : 0; $best3_txt = (1 == $best3) ? " Soziale Dienste\n" : ""; $best4 = isset($HTTP_POST_VARS["best4"]) ? 1 : 0; $best4_txt = (1 == $best4) ? " Jugendrotkreuz\n" : ""; $best5 = isset($HTTP_POST_VARS["best5"]) ? 1 : 0; $best5_txt = (1 == $best5) ? " Katastrophenhilfe\n" : ""; $best6 = isset($HTTP_POST_VARS["best6"]) ? 1 : 0; $best6_txt = (1 == $best6) ? " Auslandseinsatz\n" : ""; $comment = isset($HTTP_POST_VARS["comment"]) ? $HTTP_POST_VARS["comment"] : ""; //---------------------------------------------------------------------------- // Execute commands $status_msg = ""; if ($act == "submit") // Submit form { // Check fields if ($email == "") { $status_msg .= "Bitte geben Sie Ihr E-Mailadresse an!
"; } else { if (!check_emailsyntax($email)) { $status_msg .= "Bitte geben Sie eine gültige eMail-Adresse an!"; } } if ($vorname == "") $status_msg .= "Bitte geben Sie Ihren Vornamen an!
"; if ($nachname == "") $status_msg .= "Bitte geben Sie Ihren Nachnamen an!
"; if ($adress == "") $status_msg .= "Bitte geben Sie Ihre Adresse an!
"; if ($zip == "") $status_msg .= "Bitte geben Sie Ihre Plz an!
"; if ($ort == "") $status_msg .= "Bitte geben Sie Ihren Wohnort an!
"; if (($gebdatdd == "") OR ($gebdatmm == "") OR ($gebdatyyyy == "")) $status_msg .= "Bitte geben Sie Ihr vollständiges Geburtsdatum an!
"; if ($phone == "") $status_msg .= "Bitte geben Sie Ihre Telefonnummer an!
"; if (($best1 == 0) AND ($best2 == 0) AND ($best3 == 0) AND ($best4 == 0) AND ($best5 == 0) AND ($best6 == 0)) $status_msg .= "Bitte wählen Sie wenigstens EIN Interessensgebiet!
"; if ($status_msg == "") { // Create subject $mail_subject = "Mail bzgl. Interesse an Mitarbeit von ".$HTTP_HOST; // Create msg body $msg = "\nDiese Nachricht stammt vom Red Tools Formular Interesse an Mitarbeit auf $HTTP_HOST.\n\n"; $msg .= "Ich interessiere mich für Mitarbeit in den Bereichen:"." \n"; $msg .= $best1_txt; $msg .= $best2_txt; $msg .= $best3_txt; $msg .= $best4_txt; $msg .= $best5_txt; $msg .= $best6_txt; $msg .= "\nDaten des Absenders: \n"; $msg .= " ".$gender." "; if ("" != $title) { $msg .= $titel." "; } $msg .= $vorname." ".$nachname." \n"; $msg .= " ".$street." \n"; $msg .= " ".$zip." ".$ort."\n"; $msg .= " geboren am: ".$gebdatdd.".".$gebdatmm.".".$gebdatyyyy."\n"; $msg .= " Telefon: ".$phone; // Ok, send mail $status_msg = "Die Informationen wurden übermittelt. Danke für Ihr Interesse!"; if (!feedback_send_email(MITARBEIT_EMAIL_TO, $email, $mail_subject, $msg)) { $status_msg = "Die Informationen können zur Zeit nicht übermittelt werden. ". "Bitte versuchen Sie es ein wenig später nochmals. Danke für Ihr Verständnis."; } // User Registration START if (($conn = db_connect()) != FALSE) { if (($cmi = cmi_get($conn)) != FALSE) { $unique_list = array("EMAIL" => $email); $coid = $cmi->ct_register($unique_list); if ($coid > 0) rt_session_identify_stats($conn, $coid); $cmi->ct_set_nonstd_attrib($coid, "GENDER", $gender); $cmi->ct_set_nonstd_attrib($coid, "FIRST_NAME", $vorname); $cmi->ct_set_nonstd_attrib($coid, "FAMILY_NAME", $nachname); $cmi->ct_set_nonstd_attrib($coid, "TITLE", $titel); if ($gebdatyyyy != "" AND $gebdatmm != "" AND $gebdatdd != "") { $birthday = new RT_Date($gebdatyyyy, $gebdatmm, $gebdatdd); $cmi->ct_set_nonstd_attrib($coid, "BIRTHDAY", $birthday->get_sdate()); } $cmi->ct_set_nonstd_attrib($coid, "TELEPHONE1", $phone); $cmi->ct_set_nonstd_attrib($coid, "ADDRESS1", $adress); $cmi->ct_set_nonstd_attrib($coid, "ZIP1", $zip); $cmi->ct_set_nonstd_attrib($coid, "CITY1", $ort); $cmi->ct_set_nonstd_attrib($coid, "STATE_REF1", $district); $int_desc = "Ich interessiere mich für Mitarbeit in den Bereichen:".$best1_txt.$best2_txt.$best3_txt.$best4_txt.$best5_txt.$best6_txt; $cmi->ct_set_nonstd_attrib($coid, "INT_DESC", $int_desc); $cmi->ct_set_nonstd_attrib($coid, "EXT_DESC", $comment); $ct_groups = $cmi->ct_get_groups($coid); // get current groups if (!is_array($ct_groups)) red_log(RED_LOG_ERROR, "mitarbeit: failed to get groups for contact $coid, code=$ct_groups"); if (!in_array(CONTACT_GROUP_MITARBEIT, $ct_groups)) // not in group yet? { $ct_groups[] = CONTACT_GROUP_MITARBEIT; if (($result = $cmi->ct_set_groups($coid, $ct_groups)) != CMI_OK) red_log(RED_LOG_ERROR, "mitarbeit: failed to set groups for contact $coid, code=$result"); } if ($newsletter != 0) { // Assign to contact group "Newsletter" (preserve all old assignments) if (!in_array(CONTACT_GROUP_NEWSLETTER, $ct_groups)) // not in group yet? { $ct_groups[] = CONTACT_GROUP_NEWSLETTER; if (($result = $cmi->ct_set_groups($coid, $ct_groups)) != CMI_OK) { red_log(RED_LOG_ERROR, "mitarbeit: failed to set groups for contact $coid, code=$result"); } } } } } // User Registration END } } //---------------------------------------------------------------------------- // Generate page // Determine the already known values from logged in user for comfort: $known_props = array(); if ($act == "" && $rt_session_auth_contact_id != "") { if (($conn = db_connect()) != FALSE) { if (($cmi = cmi_get($conn)) != FALSE) { $known_props = $cmi->ct_get_attribs($rt_session_auth_contact_id); } } } $t = use_templates($templ_files); // Set page variables $t->set_var("FORM_ACTION", common_create_url($tp, "act", "submit")); $t->set_var("VAR_".strtoupper($gender)."_SELECTED", "selected"); $t->set_var("VAR_FIRST_NAME", isset($known_props["FIRST_NAME"]) ? $known_props["FIRST_NAME"] : rt_clean_string($vorname)); $t->set_var("VAR_FIRST_NAME_SIZE", awr(20)); $t->set_var("VAR_FAMILY_NAME", isset($known_props["FAMILY_NAME"]) ? $known_props["FAMILY_NAME"] : rt_clean_string($nachname)); $t->set_var("VAR_FAMILY_NAME_SIZE", awr(20)); $t->set_var("VAR_TITLE", isset($known_props["TITLE"]) ? $known_props["TITLE"] : rt_clean_string($titel)); $t->set_var("VAR_TITLE_SIZE", awr(20)); if (isset($known_props["BIRTHDAY"])) { $birthday = new RT_Date(); $birthday -> put_sdate($known_props["BIRTHDAY"]); } $t->set_var(("VAR_".$gebdatdd."D_SELECTED"), "selected"); $t->set_var(("VAR_".$gebdatmm."M_SELECTED"), "selected"); $t->set_var("VAR_BYEAR", isset($known_props["BIRTHDAY"]) ? $birthday->get_year() : rt_clean_string($gebdatyyyy)); $t->set_var("VAR_BYEAR_SIZE", awr(4)); $t->set_var("VAR_PHONE", isset($known_props["TELEPHONE1"]) ? $known_props["PHONE"] : rt_clean_string($phone)); $t->set_var("VAR_PHONE_SIZE", awr(20)); $t->set_var("VAR_STREET", isset($known_props["ADDRESS1"]) ? $known_props["STREET"] : rt_clean_string($adress)); $t->set_var("VAR_STREET_SIZE", awr(25)); $t->set_var("VAR_ZIP_CODE", isset($known_props["ZIP1"]) ? $known_props["ZIP_CODE"] : rt_clean_string($zip)); $t->set_var("VAR_ZIP_CODE_SIZE", awr(4)); $t->set_var("VAR_CITY", isset($known_props["CITY1"]) ? $known_props["CITY"] : rt_clean_string($ort)); $t->set_var("VAR_CITY_SIZE", awr(25)); $t->set_var(("VAR_".strtoupper($district)."_SELECTED"), "selected"); $t->set_var("VAR_EMAIL", isset($known_props["EMAIL"]) ? $known_props["EMAIL"] : rt_clean_string($email)); $t->set_var("VAR_EMAIL_SIZE", awr(25)); $t->set_var("SET_CHECKED_NEWS", ("1" == $newsletter) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST1", ("1" == $best1) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST2", ("1" == $best2) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST3", ("1" == $best3) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST4", ("1" == $best4) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST5", ("1" == $best5) ? "checked" : ""); $t->set_var("SET_CHECKED_BEST6", ("1" == $best6) ? "checked" : ""); $t->set_var("VAR_COMMENT", isset($known_props["EXT_DESC"]) ? $known_props["EXT_DESC"] : rt_clean_string($comment)); $t->set_var("COMMENT_SIZE", awr(60)); // Display status message $t->set_block("FORM_MITARBEIT", "BLOCK_RESULT"); if ($status_msg != "") // is there a status to display? { $t->set_var("VAR_RESULT_MSG", $status_msg); $t->parse("BLOCK_RESULT", "BLOCK_RESULT"); } else { $t->set_var("BLOCK_RESULT", ""); } $t->parse("PAGE_OUTPUT", "FORM_MITARBEIT"); $t->p("PAGE_OUTPUT"); // finish and print ?>